*,
::before,
::after {
box-sizing: border-box
}

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

body {
margin: 0;
min-height: 100svh;
overflow-x: hidden;
-webkit-text-size-adjust: 100%;
font-family: 'Open Sans', sans-serif
}

.utility-bar {
background: #01216E;
padding: 8px 32px
}

.utility-bar__row {
max-width: 1600px;
margin: 0 auto;
display: flex;
align-items: center;
justify-content: space-between;
gap: 16px;
flex-wrap: wrap
}

.utility-bar__contacts {
display: flex;
align-items: center;
gap: 24px;
flex-wrap: wrap
}

.utility-bar__item {
display: flex;
align-items: center;
gap: 8px;
color: #EBF3EF;
font-size: 14px;
line-height: 1.5;
text-decoration: none;
letter-spacing: .03em;
transition: color .2s cubic-bezier(0.4, 0, 0.2, 1)
}

.utility-bar__item:hover {
color: #FF9BB3
}

.utility-bar__item .fa,
.utility-bar__item .icon {
font-size: 14px;
color: #FF9BB3
}

.utility-bar__lang {
display: flex;
align-items: center;
gap: 8px
}

.lang-btn {
background: none;
border: 1px solid #ebf3ef4d;
color: #EBF3EF;
font-size: 14px;
font-family: 'Open Sans', sans-serif;
padding: 4px 8px;
border-radius: 3px;
cursor: pointer;
letter-spacing: .05em;
transition: background .18s cubic-bezier(0.4, 0, 0.2, 1), border-color .18s cubic-bezier(0.4, 0, 0.2, 1)
}

.lang-btn:hover {
background: #ff9bb32e;
border-color: #FF9BB3
}

.lang-btn--active {
background: #ff9bb338;
border-color: #FF9BB3;
color: #FF9BB3
}

.lang-btn:focus {
outline: none
}

.lang-btn:focus-visible::before {
content: 'język';
position: absolute;
top: -20px;
left: 0;
font-size: 14px;
color: #FF9BB3;
letter-spacing: .04em
}

.lang-btn {
position: relative
}

.brand-bar {
background: linear-gradient(160deg, #EBF3EF 0%, #fff 60%, #EBF3EF 100%);
padding: 24px 32px 16px;
border-bottom: 2px solid #01216e14
}

.brand-bar__row {
max-width: 1600px;
margin: 0 auto;
display: flex;
flex-direction: column;
align-items: center;
gap: 8px
}

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

.brand-mark__logo-box {
width: 44px;
height: 56px;
border-top: 2px solid #01216e40;
border-bottom: 2px solid #01216e40;
background: #fff;
border-radius: 24px;
display: flex;
align-items: center;
justify-content: center;
padding: 8px;
box-shadow: 2px 3px 2px 0 #01216e0f 2px 6px 20px 0 #01216e14
}

.brand-mark__logo-box img {
width: 32px;
height: 40px;
object-fit: contain;
display: block
}

.brand-mark__name {
font-size: 33px;
font-weight: 700;
line-height: 1.2;
color: #01216E;
letter-spacing: -.01em
}

.primary-nav {
background: #fff;
border-bottom: 1px solid #01216e1a;
box-shadow: 2px 6px 20px 0 #01216e14;
padding: 0 32px
}

.primary-nav__row {
max-width: 1600px;
margin: 0 auto;
display: flex;
align-items: center;
justify-content: center;
flex-wrap: wrap;
gap: 4px
}

.primary-nav__link {
display: inline-flex;
align-items: center;
gap: 8px;
padding: 16px 24px;
font-size: 14px;
font-weight: 700;
line-height: 1.5;
color: #01216E;
text-decoration: none;
letter-spacing: .04em;
border-bottom: 3px solid transparent;
transition: color .15s cubic-bezier(0.4, 0, 0.2, 1), border-color .22s cubic-bezier(0.0, 0, 0.2, 1);
white-space: nowrap
}

.primary-nav__link:hover {
color: #FF9BB3;
border-bottom-color: #FF9BB3
}

.primary-nav__link--active {
color: #FF9BB3;
border-bottom-color: #FF9BB3
}

.primary-nav__link:focus {
outline: none
}

.primary-nav__link:focus-visible {
outline: 2px solid #FF9BB3;
outline-offset: 2px;
border-radius: 3px
}

.primary-nav__link .fa,
.primary-nav__link .icon {
font-size: 14px;
color: #FF9BB3
}

@media (max-width: 768px) {
.utility-bar {
padding: 8px 16px
}

.utility-bar__contacts {
gap: 16px
}

.brand-bar {
padding: 16px 16px 12px
}

.primary-nav {
padding: 0 16px
}

.primary-nav__link {
padding: 12px 16px;
font-size: 14px
}

.brand-mark__name {
font-size: 19px
}
}

@media (max-width: 320px) {
.utility-bar__item span {
display: none
}

.primary-nav__link {
padding: 12px 8px
}
}

.site-footer {
background: #01216E;
padding: 64px 32px 32px;
box-shadow: 2px 8px 44px 0 #01216e21 2px 6px 20px 0 #01216e14 2px 3px 2px 0 #01216e0f
}

.site-footer__inner {
max-width: 1600px;
margin: 0 auto
}

.site-footer__grid {
display: grid;
grid-template-columns: 2fr 1fr 1fr;
gap: 64px;
margin-bottom: 64px
}

.footer-brand__logo-box {
width: 32px;
height: 40px;
border-top: 1px solid #ebf3ef4d;
border-bottom: 1px solid #ebf3ef4d;
border-radius: 24px;
background: #ffffff14;
display: flex;
align-items: center;
justify-content: center;
padding: 4px;
margin-bottom: 16px;
box-shadow: 2px 3px 2px 0 #ff9bb30f
}

.footer-brand__logo-box img {
width: 24px;
height: 32px;
object-fit: contain;
display: block
}

.footer-brand__name {
font-size: 19px;
font-weight: 700;
color: #EBF3EF;
line-height: 1.2;
margin-bottom: 16px
}

.footer-brand__desc {
font-size: 14px;
color: #ebf3efbf;
line-height: 1.7;
margin-bottom: 24px;
max-width: 340px
}

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

.footer-brand__contact-item {
display: flex;
align-items: flex-start;
gap: 8px;
font-size: 14px;
color: #ebf3efbf;
line-height: 1.5;
text-decoration: none;
transition: color .18s cubic-bezier(0.4, 0, 0.2, 1)
}

.footer-brand__contact-item:hover {
color: #FF9BB3
}

.footer-brand__contact-item .fa {
color: #FF9BB3;
font-size: 14px;
margin-top: 2px
}

.footer-links__label {
font-size: 14px;
font-weight: 700;
color: #FF9BB3;
letter-spacing: .08em;
text-transform: uppercase;
margin-bottom: 16px;
line-height: 1.5
}

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

.footer-links__list li a {
font-size: 14px;
color: #ebf3efbf;
text-decoration: none;
line-height: 1.5;
transition: color .15s cubic-bezier(0.4, 0, 0.2, 1);
display: inline-flex;
align-items: center;
gap: 8px
}

.footer-links__list li a:hover {
color: #FF9BB3
}

.footer-links__list li a .fa {
font-size: 14px;
color: #ff9bb399
}

.site-footer__bottom {
border-top: 1px solid #ebf3ef1f;
padding-top: 32px;
display: flex;
align-items: center;
justify-content: space-between;
flex-wrap: wrap;
gap: 16px
}

.footer-copy {
font-size: 14px;
color: #ebf3ef80;
line-height: 1.5
}

.footer-legal {
display: flex;
gap: 24px;
flex-wrap: wrap
}

.footer-legal a {
font-size: 14px;
color: #ebf3ef80;
text-decoration: none;
line-height: 1.5;
transition: color .18s cubic-bezier(0.4, 0, 0.2, 1)
}

.footer-legal a:hover {
color: #FF9BB3
}

@media (max-width: 1024px) {
.site-footer__grid {
grid-template-columns: 1fr 1fr;
gap: 32px
}

.footer-brand {
grid-column: 1 / -1
}
}

@media (max-width: 768px) {
.site-footer {
padding: 32px 16px 24px
}

.site-footer__grid {
grid-template-columns: 1fr;
gap: 32px;
margin-bottom: 32px
}

.footer-brand {
grid-column: auto
}

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

.cookie-notice {
position: fixed;
bottom: 0;
left: 0;
right: 0;
z-index: 2000;
background: #fff;
box-shadow: 2px 8px 44px 0 #01216e21 2px 6px 20px 0 #01216e14;
border-top: 2px solid #FF9BB3;
border-radius: 24px 24px 0 0;
padding: 24px 32px;
transform: translateX(-100%);
transition: transform .38s cubic-bezier(0.4, 0, 0.2, 1)
}

.cookie-notice--visible {
transform: translateX(0)
}

.cookie-notice__inner {
max-width: 1600px;
margin: 0 auto
}

.cookie-notice__headline {
font-size: 19px;
font-weight: 700;
color: #01216E;
line-height: 1.2;
margin-bottom: 8px
}

.cookie-notice__desc {
font-size: 14px;
color: #01216E;
line-height: 1.7;
margin-bottom: 16px
}

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

.cookie-notice__cat {
display: flex;
align-items: center;
gap: 8px;
font-size: 14px;
color: #01216E;
line-height: 1.5
}

.cookie-notice__cat input[type="checkbox"] {
accent-color: #FF9BB3;
width: 16px;
height: 16px;
cursor: pointer
}

.cookie-notice__cat--required input {
opacity: .5;
cursor: not-allowed
}

.cookie-notice__opt {
display: flex;
align-items: center;
gap: 8px;
margin-bottom: 16px;
font-size: 14px;
color: #01216E;
line-height: 1.5
}

.cookie-notice__opt input[type="checkbox"] {
accent-color: #01216E;
width: 16px;
height: 16px;
cursor: pointer
}

.cookie-notice__actions {
display: flex;
align-items: center;
gap: 24px;
flex-wrap: wrap
}

.cookie-notice__btn-accept {
font-size: 14px;
font-weight: 700;
color: #01216E;
background: none;
border: none;
cursor: pointer;
font-family: 'Open Sans', sans-serif;
text-decoration: underline;
text-underline-offset: 3px;
padding: 0;
line-height: 1.5;
transition: color .15s cubic-bezier(0.4, 0, 0.2, 1)
}

.cookie-notice__btn-accept:hover {
color: #FF9BB3
}

.cookie-notice__btn-reject {
font-size: 14px;
color: #01216e99;
background: none;
border: none;
cursor: pointer;
font-family: 'Open Sans', sans-serif;
text-decoration: underline;
text-underline-offset: 3px;
padding: 0;
line-height: 1.5;
transition: color .15s cubic-bezier(0.4, 0, 0.2, 1)
}

.cookie-notice__btn-reject:hover {
color: #01216E
}

.cookie-mini {
position: fixed;
bottom: 16px;
left: 16px;
z-index: 1999;
background: #01216E;
color: #EBF3EF;
font-size: 14px;
font-family: 'Open Sans', sans-serif;
border: none;
border-radius: 40px;
padding: 8px 16px;
cursor: pointer;
box-shadow: 2px 6px 20px 0 #01216e14;
transition: background .18s cubic-bezier(0.4, 0, 0.2, 1);
display: none
}

.cookie-mini:hover {
background: #FF9BB3;
color: #01216E
}

@media (max-width: 768px) {
.cookie-notice {
padding: 16px;
border-radius: 24px 24px 0 0
}
}

.content-doc {
max-width: 1600px;
margin: 0 auto;
padding: 64px 32px;
color: #01216E
}

.content-doc h1 {
font-size: 62px;
line-height: 1.2;
letter-spacing: -.5px;
margin-bottom: 32px;
color: #01216E
}

.content-doc h2 {
font-size: 33px;
line-height: 1.2;
margin-top: 64px;
margin-bottom: 24px;
color: #01216E
}

.content-doc h3 {
font-size: 19px;
line-height: 1.5;
margin-top: 32px;
margin-bottom: 16px;
color: #01216E;
letter-spacing: .02em
}

.content-doc h4 {
font-size: 19px;
line-height: 1.5;
margin-top: 24px;
margin-bottom: 16px;
color: #FF9BB3
}

.content-doc h5 {
font-size: 14px;
line-height: 1.5;
letter-spacing: .08em;
text-transform: uppercase;
margin-top: 24px;
margin-bottom: 8px;
color: #01216E
}

.content-doc h6 {
font-size: 14px;
line-height: 1.7;
letter-spacing: .06em;
margin-top: 16px;
margin-bottom: 8px;
color: #01216E;
opacity: .75
}

.content-doc p {
font-size: 19px;
line-height: 1.7;
margin-bottom: 16px;
color: #01216E
}

.content-doc em,
.content-doc i {
font-style: italic;
color: inherit
}

.content-doc hr {
border: none;
border-top: 2px solid #EBF3EF;
margin: 64px 0;
box-shadow: 2px 3px 2px 0 #01216e0f
}

.content-doc table {
width: 100%;
border-collapse: collapse;
margin: 32px 0;
font-size: 14px;
line-height: 1.5;
box-shadow: 2px 6px 20px 0 #01216e14;
border-radius: 3px;
overflow: hidden
}

.content-doc thead {
background-color: #01216E;
color: #EBF3EF
}

.content-doc thead th {
padding: 16px;
font-size: 14px;
letter-spacing: .07em;
text-transform: uppercase;
text-align: left;
color: #EBF3EF;
border: none
}

.content-doc tbody tr {
background-color: #fff;
transition: background-color .2s cubic-bezier(0.4, 0, 0.2, 1)
}

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

.content-doc tbody tr:hover {
background-color: #fce8ee
}

.content-doc td {
padding: 16px;
font-size: 14px;
line-height: 1.5;
color: #01216E;
border-bottom: 1px solid #EBF3EF;
vertical-align: top
}

.content-doc th {
padding: 16px;
vertical-align: top
}

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

.content-doc h1 {
font-size: 33px
}

.content-doc h2 {
font-size: 19px;
margin-top: 32px
}

.content-doc table {
display: block;
overflow-x: auto;
-webkit-overflow-scrolling: touch;
max-width: 100%
}
}

@media (max-width: 320px) {
.content-doc {
padding: 24px 8px
}

.content-doc h1 {
font-size: 33px
}

.content-doc p {
font-size: 14px
}
}

@media (min-width: 1440px) {
.content-doc {
padding: 64px
}
}

.lpd {
max-width: 1600px;
margin: 0 auto;
padding: 0 32px
}

.lpd .reveal {
animation: lpd-reveal .45s cubic-bezier(0.4, 0, 0.2, 1) both
}

@keyframes lpd-reveal {
from {
opacity: 0;
transform: scale(0.97)
}

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

.lpd .divider--dash {
border: none;
height: 2px;
background-image: repeating-linear-gradient(90deg, #01216E 0px, #01216E 8px, transparent 8px, transparent 14px, #FF9BB3 14px, #FF9BB3 20px, transparent 20px, transparent 32px);
margin: 32px 0
}

.lpd .shape-anchor {
display: inline-block;
width: 10px;
height: 10px;
background: #FF9BB3;
border-radius: 3px;
margin-right: 8px;
vertical-align: middle;
flex-shrink: 0
}

.lpd .prog-detail__head {
display: grid;
grid-template-columns: 1fr 320px;
gap: 64px;
padding: 64px 0 32px;
align-items: start
}

.lpd .prog-detail__head .meta-row {
display: flex;
flex-direction: row;
gap: 16px;
flex-wrap: wrap;
margin-bottom: 24px;
align-items: center
}

.lpd .prog-detail__head .badge {
font-size: 14px;
line-height: 1.2;
letter-spacing: .06em;
padding: 4px 16px;
border-radius: 3px;
background: #EBF3EF;
color: #01216E;
font-weight: 600;
border: 1.5px solid #01216E
}

.lpd .prog-detail__head .badge--pink {
background: #FF9BB3;
border-color: #FF9BB3;
color: #01216E
}

.lpd .head__title {
font-size: 62px;
line-height: 1.2;
color: #01216E;
margin: 0 0 24px;
letter-spacing: -.01em
}

.lpd .head__sub {
font-size: 19px;
line-height: 1.7;
color: #2a3a5e;
margin: 0 0 32px;
max-width: 640px
}

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

.lpd .btn-primary {
font-size: 19px;
line-height: 1.2;
padding: 16px 32px;
background: #01216E;
color: #fff;
border: none;
border-radius: 24px;
cursor: pointer;
transition: background .2s cubic-bezier(0.4, 0, 0.2, 1), box-shadow .18s cubic-bezier(0.4, 0, 0.2, 1);
box-shadow: 2px 6px 20px 0 #01216e14;
position: relative;
overflow: hidden
}

.lpd .btn-primary:hover {
background: #FF9BB3;
color: #01216E;
box-shadow: 2px 8px 44px 0 #01216e21
}

.lpd .btn-primary:focus {
outline: 3px solid #FF9BB3;
outline-offset: 3px
}

.lpd .btn-primary:active {
transform: scale(0.98)
}

.lpd .btn-icon {
font-size: 19px;
line-height: 1.2;
padding: 16px;
background: #EBF3EF;
color: #01216E;
border: 1.5px solid #01216E;
border-radius: 24px;
cursor: pointer;
transition: background .25s cubic-bezier(0.0, 0, 0.2, 1), border-color .25s cubic-bezier(0.0, 0, 0.2, 1);
box-shadow: 2px 3px 2px 0 #ff9bb30f
}

.lpd .btn-icon:hover {
background: #01216E;
color: #fff
}

.lpd .btn-icon:focus {
outline: 3px solid #FF9BB3;
outline-offset: 3px
}

.lpd .img-col {
position: relative
}

.lpd .img-col__frame {
border-radius: 24px;
overflow: hidden;
aspect-ratio: 3/4;
box-shadow: 2px 8px 44px 0 #01216e21
}

.lpd .img-col__frame img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
filter: saturate(0.7) sepia(0.25);
transition: filter .28s cubic-bezier(0.4, 0, 0.2, 1)
}

.lpd .img-col__frame:hover img {
filter: saturate(1) sepia(0)
}

.lpd .img-col__tag {
position: absolute;
bottom: 24px;
left: -16px;
background: #FF9BB3;
color: #01216E;
font-size: 14px;
line-height: 1.2;
font-weight: 700;
padding: 8px 16px;
border-radius: 3px;
letter-spacing: .05em;
box-shadow: 2px 6px 20px 0 #ff9bb314
}

.lpd .stats-strip {
display: flex;
flex-direction: row;
gap: 32px;
flex-wrap: wrap;
padding: 24px 32px;
background: #EBF3EF;
border-radius: 24px;
margin-bottom: 32px;
box-shadow: 2px 3px 2px 0 #ff9bb30f;
align-items: center
}

.lpd .stat__item {
display: flex;
flex-direction: column;
gap: 4px
}

.lpd .stat__label {
font-size: 14px;
line-height: 1.2;
color: #4a5a7e;
letter-spacing: .07em;
text-transform: uppercase
}

.lpd .stat__val {
font-size: 19px;
line-height: 1.5;
color: #01216E;
font-weight: 700
}

.lpd .stat__divider {
width: 1px;
height: 40px;
background: linear-gradient(180deg, #FF9BB3 0%, #01216E 100%);
flex-shrink: 0
}

.lpd .body-grid {
display: grid;
grid-template-columns: 280px 1fr;
gap: 64px;
padding: 32px 0 64px;
align-items: start
}

.lpd .sidebar {
position: sticky;
top: 32px
}

.lpd .price-card {
background: #01216E;
border-radius: 24px;
padding: 32px;
box-shadow: 2px 8px 44px 0 #01216e21;
color: #fff;
margin-bottom: 24px
}

.lpd .price-card__label {
font-size: 14px;
line-height: 1.2;
letter-spacing: .07em;
text-transform: uppercase;
color: #FF9BB3;
margin-bottom: 8px
}

.lpd .price-card__amount {
font-size: 33px;
line-height: 1.2;
font-weight: 700;
color: #fff;
margin-bottom: 4px
}

.lpd .price-card__sep {
display: block;
width: 100%;
height: 1px;
background: linear-gradient(90deg, #FF9BB3 0%, transparent 100%);
margin: 16px 0
}

.lpd .price-card__desc {
font-size: 14px;
line-height: 1.7;
color: #c8d8f8;
margin-bottom: 16px
}

.lpd .price-card__note {
font-size: 14px;
line-height: 1.5;
color: #FF9BB3;
font-style: italic;
margin-bottom: 24px
}

.lpd .price-card .btn-enroll {
width: 100%;
font-size: 19px;
line-height: 1.2;
padding: 16px;
background: #FF9BB3;
color: #01216E;
border: none !important;
border-radius: 24px;
cursor: pointer;
font-weight: 700;
transition: background .2s cubic-bezier(0.4, 0, 0.2, 1), box-shadow .18s cubic-bezier(0.4, 0, 0.2, 1);
box-shadow: 2px 6px 20px 0 #ff9bb314;
display: block;
text-align: center;
text-decoration: none
}

.lpd .price-card .btn-enroll:hover {
background: #fff;
box-shadow: 2px 8px 44px 0 #01216e21
}

.lpd .price-card .btn-enroll:focus {
outline: 3px solid #FF9BB3;
outline-offset: 3px
}

.lpd .sidebar__extra {
background: #EBF3EF;
border-radius: 24px;
padding: 24px;
box-shadow: 2px 3px 2px 0 #ff9bb30f
}

.lpd .sidebar__extra .ex-item {
display: flex;
flex-direction: row;
align-items: center;
gap: 8px;
padding: 8px 0;
border-bottom: 1px solid #01216e14;
font-size: 14px;
line-height: 1.5;
color: #01216E
}

.lpd .sidebar__extra .ex-item:last-child {
border-bottom: none
}

.lpd .sidebar__extra .ex-item i {
color: #FF9BB3;
font-size: 14px;
width: 16px;
flex-shrink: 0
}

.lpd .desc-block {
margin-bottom: 32px
}

.lpd .desc-block__heading {
font-size: 33px;
line-height: 1.2;
color: #01216E;
margin: 0 0 16px;
display: flex;
flex-direction: row;
align-items: center
}

.lpd .desc-block p {
font-size: 19px;
line-height: 1.7;
color: #2a3a5e;
margin-bottom: 16px
}

.lpd .desc-block h2 {
font-size: 33px;
line-height: 1.2;
color: #01216E;
margin: 24px 0 8px
}

.lpd .desc-block h3 {
font-size: 19px;
line-height: 1.5;
color: #01216E;
margin: 16px 0 8px;
font-weight: 700
}

.lpd .desc-block mark {
background: #FF9BB3;
color: #01216E;
border-radius: 3px;
padding: 0 4px
}

.lpd .desc-block ol {
padding-left: 24px;
margin-bottom: 16px
}

.lpd .desc-block ol li {
font-size: 19px;
line-height: 1.7;
color: #2a3a5e;
margin-bottom: 8px
}

.lpd .desc-block ol li::marker {
color: #FF9BB3;
font-weight: 700
}

.lpd .desc-block dl {
margin-bottom: 16px
}

.lpd .desc-block dt {
font-size: 14px;
line-height: 1.2;
font-weight: 700;
color: #01216E;
letter-spacing: .05em;
text-transform: uppercase;
margin-top: 16px
}

.lpd .desc-block dd {
font-size: 19px;
line-height: 1.7;
color: #2a3a5e;
margin-left: 0;
padding-left: 16px;
border-left: 3px solid #FF9BB3;
border-bottom: 1px solid #EBF3EF
}

.lpd .desc-block blockquote {
margin: 24px 0;
padding: 24px 32px;
background: #EBF3EF;
border-radius: 24px;
border-left: 4px solid #FF9BB3;
border-top: 1px solid #01216e14
}

.lpd .desc-block blockquote p {
margin: 0 0 8px;
font-style: italic;
color: #01216E
}

.lpd .desc-block cite {
font-size: 14px;
color: #4a5a7e;
font-style: normal;
letter-spacing: .04em
}

.lpd .prog-block {
background: linear-gradient(180deg, #EBF3EF 50%, #dde8f4 100%);
border-radius: 40px;
padding: 32px;
box-shadow: 2px 6px 20px 0 #01216e14;
margin-bottom: 32px
}

.lpd .prog-block__heading {
font-size: 33px;
line-height: 1.2;
color: #01216E;
margin: 0 0 24px;
display: flex;
flex-direction: row;
align-items: center
}

.lpd .prog-block p {
font-size: 19px;
line-height: 1.7;
color: #2a3a5e;
margin-bottom: 16px
}

.lpd .prog-block h2 {
font-size: 33px;
line-height: 1.2;
color: #01216E;
margin: 16px 0 8px
}

.lpd .prog-block small {
font-size: 14px;
line-height: 1.5;
color: #4a5a7e;
display: block;
margin-bottom: 8px
}

.lpd .prog-block ul {
list-style: none;
padding: 0;
margin: 0 0 16px
}

.lpd .prog-block ul li {
font-size: 19px;
line-height: 1.7;
color: #2a3a5e;
padding: 8px 0 8px 24px;
position: relative;
border-bottom: 1px solid #01216e0f
}

.lpd .prog-block ul li::before {
content: "";
position: absolute;
left: 0;
top: 50%;
transform: translateY(-50%);
width: 8px;
height: 8px;
border-radius: 3px;
background: #FF9BB3
}

.lpd .prog-block dl {
margin-bottom: 16px
}

.lpd .prog-block dt {
font-size: 14px;
font-weight: 700;
color: #01216E;
letter-spacing: .05em;
text-transform: uppercase;
margin-top: 16px
}

.lpd .prog-block dd {
font-size: 19px;
line-height: 1.7;
color: #2a3a5e;
margin-left: 0;
padding-left: 16px
}

.lpd .prog-block details {
border: 1.5px solid #01216e1f;
border-radius: 24px;
margin-bottom: 8px;
background: #fff;
box-shadow: 2px 3px 2px 0 #ff9bb30f;
transition: box-shadow .2s cubic-bezier(0.4, 0, 0.2, 1)
}

.lpd .prog-block details[open] {
box-shadow: 2px 6px 20px 0 #01216e14
}

.lpd .prog-block summary {
font-size: 19px;
line-height: 1.5;
color: #01216E;
font-weight: 600;
padding: 16px 24px;
cursor: pointer;
border-radius: 24px;
list-style: none;
display: flex;
flex-direction: row;
align-items: center;
gap: 8px;
transition: background .18s cubic-bezier(0.4, 0, 0.2, 1)
}

.lpd .prog-block summary:hover {
background: #EBF3EF
}

.lpd .prog-block summary::-webkit-details-marker {
display: none
}

.lpd .prog-block summary .sum-icon {
margin-left: auto;
width: 20px;
height: 20px;
flex-shrink: 0
}

.lpd .prog-block details[open] summary .sum-icon {
transform: rotate(180deg)
}

.lpd .prog-block .det-body {
padding: 0 24px 16px
}

.lpd .prog-block blockquote {
margin: 16px 0;
padding: 16px 24px;
background: #EBF3EF;
border-radius: 24px;
border-left: 4px solid #01216E
}

.lpd .prog-block blockquote p {
margin: 0;
font-style: italic
}

.lpd .abbr-deco {
font-size: 62px;
line-height: 1.2;
font-weight: 900;
color: #01216e0d;
pointer-events: none;
user-select: none;
letter-spacing: -.02em;
display: block;
text-align: right;
margin-top: -32px;
margin-bottom: -16px
}

@media (max-width: 1024px) {
.lpd .prog-detail__head {
grid-template-columns: 1fr 240px;
gap: 32px
}

.lpd .head__title {
font-size: 33px
}

.lpd .body-grid {
grid-template-columns: 240px 1fr;
gap: 32px
}
}

@media (max-width: 768px) {
.lpd {
padding: 0 16px
}

.lpd .prog-detail__head {
grid-template-columns: 1fr;
gap: 24px
}

.lpd .img-col {
order: -1
}

.lpd .img-col__frame {
aspect-ratio: 16/9
}

.lpd .head__title {
font-size: 33px
}

.lpd .body-grid {
grid-template-columns: 1fr;
gap: 32px
}

.lpd .sidebar {
position: static;
order: -1
}

.lpd .stats-strip {
gap: 16px;
padding: 16px
}

.lpd .stat__divider {
display: none
}
}

@media (max-width: 320px) {
.lpd .head__title {
font-size: 19px
}

.lpd .price-card__amount {
font-size: 19px
}
}

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

.srv .quiz-panel {
display: grid;
grid-template-columns: 1fr 1fr;
min-height: 560px;
position: relative
}

.srv .quiz-panel__img-col {
position: relative;
overflow: hidden;
border-radius: 0 40px 40px 0
}

.srv .quiz-panel__img-col img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block
}

.srv .quiz-panel__img-col::after {
content: "";
position: absolute;
inset: 0;
background: linear-gradient(to left, #01216eb8 0%, #01216e2e 60%, transparent 100%);
pointer-events: none
}

.srv .quiz-panel__bracket {
position: absolute;
width: 28px;
height: 28px;
border-color: #FF9BB3;
border-style: solid;
z-index: 2;
pointer-events: none
}

.srv .quiz-panel__bracket--tl {
top: 24px;
left: 24px;
border-width: 3px 0 0 3px
}

.srv .quiz-panel__bracket--br {
bottom: 24px;
right: 24px;
border-width: 0 3px 3px 0
}

.srv .quiz-panel__text-col {
padding: 64px 64px 64px 56px;
display: flex;
flex-direction: column;
justify-content: center;
background: #fff;
position: relative
}

.srv .quiz-panel__label {
font-size: 14px;
letter-spacing: .12em;
color: #01216E;
font-weight: 700;
text-transform: uppercase;
margin-bottom: 16px;
display: flex;
align-items: center;
gap: 8px
}

.srv .quiz-panel__label-dot {
width: 8px;
height: 8px;
background: #FF9BB3;
transform: rotate(45deg);
flex-shrink: 0;
display: inline-block
}

.srv .quiz-panel__h1 {
font-size: 62px;
line-height: 1.2;
color: #01216E;
margin: 0 0 24px;
font-weight: 800
}

.srv .quiz-panel__manifesto {
font-size: 19px;
line-height: 1.7;
color: #2a3a5c;
margin: 0 0 32px;
max-width: 520px
}

.srv .quiz-panel__deco-line {
position: absolute;
right: -32px;
top: 50%;
transform: translateY(-50%);
width: 64px;
height: 2px;
border-top: 2px dashed #FF9BB3;
z-index: 3;
pointer-events: none
}

.srv .quiz-panel__cta {
display: inline-flex;
align-items: center;
gap: 8px;
background: #01216E;
color: #fff;
font-size: 14px;
font-weight: 700;
letter-spacing: .06em;
padding: 16px 32px;
border-radius: 3px;
border: none;
cursor: pointer;
text-decoration: none;
align-self: flex-start;
box-shadow: 2px 6px 20px 0 #01216e14;
transition: background .2s cubic-bezier(0.4, 0, 0.2, 1), box-shadow .18s cubic-bezier(0.4, 0, 0.2, 1);
position: relative;
overflow: hidden
}

.srv .quiz-panel__cta:hover {
background: #FF9BB3;
color: #01216E;
box-shadow: 2px 8px 44px 0 #01216e21
}

.srv .quiz-panel__cta:focus-visible {
outline: 3px solid #FF9BB3;
outline-offset: 3px
}

.srv .quiz-panel__cta-fill {
position: absolute;
left: 0;
bottom: 0;
height: 100%;
width: 0;
background: #ff9bb32e;
transition: width .6s cubic-bezier(0.0, 0, 0.2, 1);
pointer-events: none
}

.srv .quiz-panel__cta:active .quiz-panel__cta-fill {
width: 100%
}

@keyframes srv-elastic-in {
0% {
opacity: 0;
transform: scale(0.88) translateY(24px)
}

65% {
opacity: 1;
transform: scale(1.03) translateY(-4px)
}

82% {
transform: scale(0.98) translateY(2px)
}

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

.srv .quiz-panel__text-col {
animation: srv-elastic-in .55s cubic-bezier(0.4, 0, 0.2, 1) both
}

.srv .quiz-panel__img-col {
animation: srv-elastic-in .45s .08s cubic-bezier(0.4, 0, 0.2, 1) both
}

.srv .offers {
padding: 64px 0;
background: #EBF3EF;
position: relative
}

.srv .offers__pattern {
position: absolute;
inset: 0;
opacity: .035;
pointer-events: none;
background-image: repeating-linear-gradient(60deg, #01216E 0px, #01216E 1px, transparent 1px, transparent 18px), repeating-linear-gradient(-60deg, #01216E 0px, #01216E 1px, transparent 1px, transparent 18px), repeating-linear-gradient(0deg, #01216E 0px, #01216E 1px, transparent 1px, transparent 18px);
background-size: 36px 36px;
overflow: hidden
}

.srv .offers__inner {
max-width: 1400px;
margin: 0 auto;
padding: 0 32px
}

.srv .offers__head {
display: flex;
align-items: flex-end;
justify-content: space-between;
margin-bottom: 48px;
gap: 32px;
flex-wrap: wrap
}

.srv .offers__h2 {
font-size: 33px;
line-height: 1.2;
color: #01216E;
margin: 0;
font-weight: 800;
position: relative;
padding-left: 20px
}

.srv .offers__h2::before {
content: "";
position: absolute;
left: 0;
top: 6px;
width: 10px;
height: 10px;
background: #FF9BB3;
clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%)
}

.srv .offers__desc {
font-size: 19px;
line-height: 1.5;
color: #2a3a5c;
margin: 0;
max-width: 440px
}

.srv .offers__cols {
display: grid;
grid-template-columns: 1fr 1fr 1fr;
gap: 24px
}

.srv .offer-card {
border-radius: 24px;
padding: 32px;
display: flex;
flex-direction: column;
gap: 16px;
box-shadow: 2px 3px 2px 0 #ff9bb30f;
transition: box-shadow .22s cubic-bezier(0.4, 0, 0.2, 1), transform .18s cubic-bezier(0.4, 0, 0.2, 1);
animation: srv-elastic-in .5s cubic-bezier(0.4, 0, 0.2, 1) both
}

.srv .offer-card:hover {
box-shadow: 2px 8px 44px 0 #01216e21;
transform: translateY(-3px)
}

.srv .offer-card--light {
background: #fff
}

.srv .offer-card--mid {
background: #01216E;
color: #fff
}

.srv .offer-card--accent {
background: linear-gradient(160deg, #FF9BB3 0%, #ffcad7 100%);
color: #01216E
}

.srv .offer-card__icon {
width: 44px;
height: 44px;
display: flex;
align-items: center;
justify-content: center;
border-radius: 3px;
flex-shrink: 0
}

.srv .offer-card--light .offer-card__icon {
background: #EBF3EF;
color: #01216E
}

.srv .offer-card--mid .offer-card__icon {
background: #ff9bb32e;
color: #FF9BB3
}

.srv .offer-card--accent .offer-card__icon {
background: #01216e1a;
color: #01216E
}

.srv .offer-card__icon i {
font-size: 19px
}

.srv .offer-card__h3 {
font-size: 19px;
line-height: 1.2;
margin: 0;
font-weight: 700
}

.srv .offer-card--light .offer-card__h3 {
color: #01216E
}

.srv .offer-card--mid .offer-card__h3 {
color: #fff
}

.srv .offer-card--accent .offer-card__h3 {
color: #01216E
}

.srv .offer-card__body {
font-size: 14px;
line-height: 1.7;
margin: 0
}

.srv .offer-card--light .offer-card__body {
color: #3a4a6a
}

.srv .offer-card--mid .offer-card__body {
color: #ebf3efd9
}

.srv .offer-card--accent .offer-card__body {
color: #01216E
}

.srv .offer-card__qa {
margin-top: 8px;
border-top: 1px solid #01216e1f;
padding-top: 16px
}

.srv .offer-card--mid .offer-card__qa {
border-top-color: #ffffff24
}

.srv .offer-card__q {
font-size: 14px;
font-weight: 700;
margin-bottom: 8px
}

.srv .offer-card--light .offer-card__q {
color: #01216E
}

.srv .offer-card--mid .offer-card__q {
color: #FF9BB3
}

.srv .offer-card--accent .offer-card__q {
color: #01216E
}

.srv .offer-card__a {
font-size: 14px;
line-height: 1.7;
margin: 0
}

.srv .offer-card--light .offer-card__a {
color: #3a4a6a
}

.srv .offer-card--mid .offer-card__a {
color: #ebf3efd1
}

.srv .offer-card--accent .offer-card__a {
color: #01216E
}

.srv .offers__review-row {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 24px;
margin-top: 24px
}

.srv .review-card {
background: #fff;
border-radius: 24px;
padding: 32px;
display: flex;
gap: 24px;
align-items: flex-start;
box-shadow: 2px 6px 20px 0 #01216e14;
transition: box-shadow .25s cubic-bezier(0.4, 0, 0.2, 1)
}

.srv .review-card:hover {
box-shadow: 2px 8px 44px 0 #01216e21
}

.srv .review-card__portrait {
width: 72px;
height: 72px;
border-radius: 50%;
overflow: hidden;
flex-shrink: 0;
box-shadow: 2px 3px 2px 0 #ff9bb30f
}

.srv .review-card__portrait img {
width: 72px;
height: 72px;
object-fit: cover;
object-position: center;
display: block
}

.srv .review-card__body {
display: flex;
flex-direction: column;
gap: 8px
}

.srv .review-card__name {
font-size: 14px;
font-weight: 700;
color: #01216E;
letter-spacing: .04em
}

.srv .review-card__role {
font-size: 14px;
color: #6a7a9a
}

.srv .review-card__sep {
width: 8px;
height: 8px;
background: #FF9BB3;
transform: rotate(45deg);
display: inline-block;
margin: 0 4px;
vertical-align: middle
}

.srv .review-card__quote {
font-size: 14px;
line-height: 1.7;
color: #2a3a5c;
margin: 0
}

.srv .offers__img-showcase {
margin-top: 24px;
border-radius: 24px;
overflow: hidden;
height: 260px;
position: relative;
box-shadow: 2px 6px 20px 0 #01216e14
}

.srv .offers__img-showcase img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block
}

.srv .offers__img-showcase::after {
content: "";
position: absolute;
inset: 0;
background: linear-gradient(to right, #01216e8c 0%, transparent 55%);
pointer-events: none
}

.srv .offers__img-caption {
position: absolute;
left: 32px;
bottom: 32px;
z-index: 1;
color: #fff;
font-size: 19px;
font-weight: 700;
line-height: 1.2;
max-width: 340px;
pointer-events: none
}

@media (max-width: 1024px) {
.srv .quiz-panel {
grid-template-columns: 1fr
}

.srv .quiz-panel__img-col {
height: 320px;
border-radius: 0 0 40px 40px;
order: 2
}

.srv .quiz-panel__text-col {
padding: 48px 32px;
order: 1
}

.srv .quiz-panel__h1 {
font-size: 33px
}

.srv .quiz-panel__deco-line {
display: none
}

.srv .offers__cols {
grid-template-columns: 1fr 1fr
}

.srv .offers__review-row {
grid-template-columns: 1fr
}
}

@media (max-width: 768px) {
.srv .quiz-panel__text-col {
padding: 32px 24px
}

.srv .quiz-panel__h1 {
font-size: 33px
}

.srv .offers__cols {
grid-template-columns: 1fr
}

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

.srv .offers__inner {
padding: 0 16px
}

.srv .offers {
padding: 48px 0
}

.srv .review-card {
flex-direction: column;
gap: 16px
}
}

@media (max-width: 320px) {
.srv .quiz-panel__h1 {
font-size: 19px
}

.srv .quiz-panel__text-col {
padding: 24px 16px
}

.srv .offer-card {
padding: 24px 16px
}
}

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

.lp-prog .grad-band {
background: linear-gradient(160deg, #FF9BB3 0%, #FF9BB3 48%, #01216E 52%, #01216E 100%);
padding: 64px 32px;
position: relative;
overflow: hidden
}

.lp-prog .grad-band__circles {
position: absolute;
inset: 0;
pointer-events: none
}

.lp-prog .grad-band__circles span {
position: absolute;
border-radius: 50%;
border: 1px solid #ffffff1f
}

.lp-prog .grad-band__circles span:nth-child(1) {
width: 320px;
height: 320px;
top: -80px;
right: 10%;
background: #ffffff0a
}

.lp-prog .grad-band__circles span:nth-child(2) {
width: 180px;
height: 180px;
bottom: -40px;
left: 8%;
background: #ffffff08
}

.lp-prog .grad-band__circles span:nth-child(3) {
width: 80px;
height: 80px;
top: 30px;
left: 22%;
background: #ffffff0d
}

.lp-prog .grad-band__body {
position: relative;
z-index: 1;
max-width: 720px
}

.lp-prog .grad-band__label {
display: inline-block;
font-size: 14px;
letter-spacing: .12em;
color: #ffffffbf;
margin-bottom: 16px;
text-transform: uppercase
}

.lp-prog .grad-band__h1 {
font-size: 62px;
line-height: 1.2;
color: #fff;
margin-bottom: 24px
}

.lp-prog .grad-band__desc {
font-size: 19px;
line-height: 1.7;
color: #ffffffe0;
max-width: 560px
}

.lp-prog .grad-band__img-col {
position: absolute;
right: 0;
top: 0;
bottom: 0;
width: 36%;
overflow: hidden
}

.lp-prog .grad-band__img-col img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
opacity: 0;
animation: lp-fadein .6s cubic-bezier(0.0, 0, 0.2, 1) .2s forwards
}

@keyframes lp-fadein {
to {
opacity: 1
}
}

.lp-prog .grad-band__inner {
position: relative;
display: flex;
flex-direction: row;
align-items: stretch;
min-height: 340px
}

.lp-prog .divider-a {
height: 4px;
background: linear-gradient(105deg, #FF9BB3 0%, #EBF3EF 50%, #01216E 100%)
}

.lp-prog .cards-area {
padding: 64px 32px;
background: #fff
}

.lp-prog .cards-area__top {
display: flex;
flex-direction: row;
align-items: flex-end;
gap: 32px;
margin-bottom: 32px
}

.lp-prog .cards-area__heading {
font-size: 33px;
line-height: 1.2;
color: #01216E;
display: flex;
flex-direction: row;
align-items: center;
gap: 12px
}

.lp-prog .cards-area__heading::before {
content: '';
display: inline-block;
width: 10px;
height: 10px;
background: #FF9BB3;
border-radius: 3px;
flex-shrink: 0
}

.lp-prog .cards-area__sub {
font-size: 14px;
line-height: 1.5;
color: #4a5568;
max-width: 400px
}

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

.lp-prog .prog-card {
border-radius: 24px;
background: #fff;
box-shadow: 2px 6px 20px 0 #01216e14;
display: flex;
flex-direction: column;
overflow: hidden;
transition: box-shadow .25s cubic-bezier(0.4, 0, 0.2, 1), transform .2s cubic-bezier(0.4, 0, 0.2, 1);
border: 1px solid #EBF3EF
}

.lp-prog .prog-card:hover {
box-shadow: 2px 8px 44px 0 #01216e21;
transform: translateY(-3px)
}

.lp-prog .prog-card__img-wrap {
width: 100%;
aspect-ratio: 16/9;
overflow: hidden;
position: relative
}

.lp-prog .prog-card__img-wrap img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
transition: transform .28s cubic-bezier(0.4, 0, 0.2, 1)
}

.lp-prog .prog-card:hover .prog-card__img-wrap img {
transform: scale(1.04)
}

.lp-prog .prog-card__badge {
position: absolute;
top: 12px;
left: 12px;
background: #01216E;
color: #fff;
font-size: 14px;
letter-spacing: .06em;
padding: 4px 12px;
border-radius: 3px
}

.lp-prog .prog-card__body {
padding: 24px;
display: flex;
flex-direction: column;
flex: 1;
gap: 8px
}

.lp-prog .prog-card__title {
font-size: 19px;
line-height: 1.5;
color: #01216E;
margin-bottom: 4px
}

.lp-prog .prog-card__desc {
font-size: 14px;
line-height: 1.7;
color: #3d4a5c;
flex: 1
}

.lp-prog .prog-card__meta {
display: flex;
flex-direction: row;
flex-wrap: wrap;
gap: 8px;
margin-top: 8px
}

.lp-prog .prog-card__meta-item {
font-size: 14px;
color: #5a6a80;
display: flex;
flex-direction: row;
align-items: center;
gap: 4px
}

.lp-prog .prog-card__meta-item i {
color: #FF9BB3;
font-size: 13px
}

.lp-prog .prog-card__seats {
font-size: 14px;
color: #01216E;
background: #EBF3EF;
border-radius: 3px;
padding: 4px 8px;
display: inline-flex;
align-items: center;
gap: 4px
}

.lp-prog .prog-card__price-row {
display: flex;
flex-direction: row;
align-items: flex-end;
gap: 8px;
margin-top: 8px;
padding-top: 16px;
border-top: 1px solid #EBF3EF
}

.lp-prog .prog-card__price {
font-size: 33px;
line-height: 1.2;
color: #01216E;
font-weight: 700
}

.lp-prog .prog-card__pricedes {
font-size: 14px;
color: #5a6a80;
line-height: 1.5;
padding-bottom: 4px
}

.lp-prog .prog-card__note {
font-size: 14px;
color: #7a8a9a;
line-height: 1.5;
margin-top: 4px
}

.lp-prog .prog-card__duration {
font-size: 14px;
color: #5a6a80;
display: flex;
flex-direction: row;
align-items: center;
gap: 4px
}

.lp-prog .prog-card__cta {
margin-top: 16px;
display: inline-block;
background: #01216E;
color: #fff;
font-size: 14px;
letter-spacing: .06em;
padding: 12px 24px;
border-radius: 3px;
text-decoration: none;
text-align: center;
transition: background .2s cubic-bezier(0.4, 0, 0.2, 1);
border: none;
cursor: pointer
}

.lp-prog .prog-card__cta:hover {
background: #FF9BB3;
color: #01216E
}

.lp-prog .divider-b {
height: 3px;
background: linear-gradient(95deg, #EBF3EF 0%, #FF9BB3 60%, #EBF3EF 100%)
}

.lp-prog .why-area {
padding: 64px 32px;
background: #EBF3EF;
position: relative
}

.lp-prog .why-area__inner {
display: flex;
flex-direction: row;
gap: 64px;
align-items: flex-start;
max-width: 1200px
}

.lp-prog .why-area__col-text {
flex: 1 1 340px
}

.lp-prog .why-area__col-items {
flex: 2 1 560px;
display: flex;
flex-direction: column;
gap: 16px
}

.lp-prog .why-area__heading {
font-size: 33px;
line-height: 1.2;
color: #01216E;
margin-bottom: 16px;
display: flex;
flex-direction: row;
align-items: center;
gap: 10px
}

.lp-prog .why-area__heading::before {
content: '';
display: block;
width: 6px;
height: 32px;
background: #FF9BB3;
border-radius: 3px;
flex-shrink: 0
}

.lp-prog .why-area__intro {
font-size: 14px;
line-height: 1.7;
color: #3d4a5c
}

.lp-prog .why-item {
background: #fff;
border-radius: 24px;
padding: 24px;
display: flex;
flex-direction: row;
gap: 16px;
align-items: flex-start;
box-shadow: 2px 3px 2px 0 #ff9bb30f;
border-left: 4px solid #FF9BB3;
border-top: 1px solid #EBF3EF;
border-right: 1px solid #EBF3EF;
border-bottom: 1px solid #EBF3EF
}

.lp-prog .why-item__icon {
width: 40px;
height: 40px;
border-radius: 3px;
background: #EBF3EF;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
color: #01216E;
font-size: 19px
}

.lp-prog .why-item__title {
font-size: 19px;
line-height: 1.5;
color: #01216E;
margin-bottom: 4px
}

.lp-prog .why-item__desc {
font-size: 14px;
line-height: 1.7;
color: #3d4a5c
}

.lp-prog .divider-c {
height: 3px;
background: linear-gradient(115deg, #01216E 0%, #EBF3EF 55%, #FF9BB3 100%)
}

.lp-prog .reviews-area {
padding: 64px 32px;
background: #fff
}

.lp-prog .reviews-area__heading {
font-size: 33px;
line-height: 1.2;
color: #01216E;
margin-bottom: 32px;
display: flex;
flex-direction: row;
align-items: center;
gap: 10px
}

.lp-prog .reviews-area__heading::before {
content: '';
display: block;
width: 28px;
height: 4px;
background: #FF9BB3;
border-radius: 3px
}

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

.lp-prog .review-card {
border-radius: 24px;
padding: 24px;
background: #EBF3EF;
box-shadow: 2px 3px 2px 0 #01216e0f;
display: flex;
flex-direction: column;
gap: 16px
}

.lp-prog .review-card__portrait {
width: 64px;
height: 90px;
border-radius: 3px;
overflow: hidden;
box-shadow: 2px 6px 20px 0 #01216e14;
flex-shrink: 0
}

.lp-prog .review-card__portrait img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center
}

.lp-prog .review-card__top {
display: flex;
flex-direction: row;
gap: 16px;
align-items: flex-start
}

.lp-prog .review-card__name {
font-size: 19px;
line-height: 1.5;
color: #01216E
}

.lp-prog .review-card__role {
font-size: 14px;
color: #5a6a80;
line-height: 1.5
}

.lp-prog .review-card__text {
font-size: 14px;
line-height: 1.7;
color: #2d3a4a
}

.lp-prog .review-no-portrait {
border-radius: 40px;
padding: 24px;
background: #01216E;
color: #fff;
box-shadow: 2px 6px 20px 0 #01216e14;
display: flex;
flex-direction: column;
gap: 16px
}

.lp-prog .review-no-portrait__name {
font-size: 19px;
line-height: 1.5;
color: #FF9BB3
}

.lp-prog .review-no-portrait__role {
font-size: 14px;
color: #ffffffb3
}

.lp-prog .review-no-portrait__text {
font-size: 14px;
line-height: 1.7;
color: #ffffffe6
}

.lp-prog .divider-d {
height: 4px;
background: linear-gradient(88deg, #FF9BB3 0%, #01216E 100%)
}

.lp-prog .metrics-area {
padding: 64px 32px;
background: #01216E;
position: relative;
overflow: hidden
}

.lp-prog .metrics-area__bg {
position: absolute;
inset: 0;
pointer-events: none;
overflow: hidden
}

.lp-prog .metrics-area__bg span {
position: absolute;
border-radius: 50%;
background: #ff9bb312;
animation: lp-drift 8s cubic-bezier(0.4, 0, 0.2, 1) infinite alternate
}

.lp-prog .metrics-area__bg span:nth-child(1) {
width: 300px;
height: 300px;
top: -60px;
right: 5%;
animation-duration: 9s
}

.lp-prog .metrics-area__bg span:nth-child(2) {
width: 180px;
height: 180px;
bottom: -30px;
left: 12%;
animation-duration: 11s;
animation-delay: 2s
}

@keyframes lp-drift {
from {
transform: translateY(0px) scale(1)
}

to {
transform: translateY(24px) scale(1.05)
}
}

.lp-prog .metrics-area__inner {
position: relative;
z-index: 1
}

.lp-prog .metrics-area__heading {
font-size: 33px;
line-height: 1.2;
color: #fff;
margin-bottom: 32px;
max-width: 560px
}

.lp-prog .metrics-grid {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 24px
}

.lp-prog .metric-box {
border-radius: 24px;
padding: 32px 24px;
background: #ffffff0f;
border: 1px solid #ff9bb333;
display: flex;
flex-direction: column;
gap: 8px;
box-shadow: inset 0 2px 6px #ff9bb30a;
transition: background .22s cubic-bezier(0.4, 0, 0.2, 1)
}

.lp-prog .metric-box:hover {
background: #ffffff1a
}

.lp-prog .metric-box__num {
font-size: 62px;
line-height: 1.2;
color: #FF9BB3
}

.lp-prog .metric-box__label {
font-size: 14px;
line-height: 1.5;
color: #fffc;
letter-spacing: .06em
}

.lp-prog .faq-area {
padding: 64px 32px;
background: #EBF3EF
}

.lp-prog .faq-area__layout {
display: flex;
flex-direction: row;
gap: 64px;
align-items: flex-start
}

.lp-prog .faq-area__col-head {
flex: 1 1 280px;
position: sticky;
top: 32px
}

.lp-prog .faq-area__heading {
font-size: 33px;
line-height: 1.2;
color: #01216E;
margin-bottom: 16px
}

.lp-prog .faq-area__note {
font-size: 14px;
line-height: 1.7;
color: #3d4a5c
}

.lp-prog .faq-area__col-items {
flex: 2 1 520px;
display: flex;
flex-direction: column;
gap: 8px
}

.lp-prog .faq-item {
border-radius: 3px;
background: #fff;
border: 1px solid #01216e14;
overflow: hidden
}

.lp-prog .faq-item summary {
padding: 16px 24px;
font-size: 19px;
line-height: 1.5;
color: #01216E;
cursor: pointer;
list-style: none;
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: center;
transition: background .18s cubic-bezier(0.4, 0, 0.2, 1)
}

.lp-prog .faq-item summary:hover {
background: #EBF3EF
}

.lp-prog .faq-item summary::-webkit-details-marker {
display: none
}

.lp-prog .faq-item__chevron {
width: 18px;
height: 18px;
flex-shrink: 0;
transition: transform .2s cubic-bezier(0.4, 0, 0.2, 1)
}

.lp-prog .faq-item[open] .faq-item__chevron {
transform: rotate(180deg)
}

.lp-prog .faq-item__ans {
padding: 0 24px 16px;
font-size: 14px;
line-height: 1.7;
color: #3d4a5c
}

@media (max-width: 1024px) {
.lp-prog .card-grid {
grid-template-columns: repeat(2, 1fr)
}

.lp-prog .metrics-grid {
grid-template-columns: repeat(2, 1fr)
}

.lp-prog .grad-band__img-col {
width: 28%
}

.lp-prog .why-area__inner {
flex-direction: column;
gap: 32px
}

.lp-prog .reviews-grid {
grid-template-columns: repeat(2, 1fr)
}

.lp-prog .faq-area__layout {
flex-direction: column;
gap: 32px
}

.lp-prog .faq-area__col-head {
position: static
}
}

@media (max-width: 768px) {
.lp-prog .grad-band {
padding: 32px 16px
}

.lp-prog .grad-band__h1 {
font-size: 33px
}

.lp-prog .grad-band__img-col {
display: none
}

.lp-prog .grad-band__inner {
min-height: auto
}

.lp-prog .card-grid {
grid-template-columns: 1fr
}

.lp-prog .cards-area {
padding: 32px 16px
}

.lp-prog .why-area {
padding: 32px 16px
}

.lp-prog .reviews-area {
padding: 32px 16px
}

.lp-prog .reviews-grid {
grid-template-columns: 1fr
}

.lp-prog .metrics-area {
padding: 32px 16px
}

.lp-prog .metrics-grid {
grid-template-columns: repeat(2, 1fr)
}

.lp-prog .metric-box__num {
font-size: 33px
}

.lp-prog .faq-area {
padding: 32px 16px
}

.lp-prog .cards-area__top {
flex-direction: column;
align-items: flex-start;
gap: 8px
}
}

@media (max-width: 320px) {
.lp-prog .grad-band__h1 {
font-size: 33px
}

.lp-prog .metrics-grid {
grid-template-columns: 1fr
}
}

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

.ctus .reach {
display: grid;
grid-template-columns: 2fr 1fr;
gap: 64px;
padding: 64px 64px 32px;
align-items: start
}

.ctus .reach__left {
display: flex;
flex-direction: column;
gap: 32px
}

.ctus .reach__badge {
display: inline-flex;
align-items: center;
gap: 8px;
background: #EBF3EF;
border: 1px solid #FF9BB3;
border-radius: 3px;
padding: 4px 16px;
width: fit-content
}

.ctus .reach__badge span {
font-size: 14px;
line-height: 1.5;
letter-spacing: .08em;
color: #01216E;
font-weight: 600
}

.ctus .reach__heading {
font-size: 62px;
line-height: 1.2;
color: #01216E;
font-weight: 800;
margin: 0
}

.ctus .reach__heading em {
font-style: normal;
color: #FF9BB3;
display: block
}

.ctus .reach__sub {
font-size: 19px;
line-height: 1.7;
color: #2a3a5c;
margin: 0;
max-width: 520px
}

.ctus .reach__img-wrap {
position: relative;
border-radius: 24px;
overflow: hidden;
box-shadow: 2px 8px 44px 0 #01216e21;
aspect-ratio: 1/1
}

.ctus .reach__img-wrap img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
border-radius: 24px
}

.ctus .reach__img-wrap::after {
content: "";
position: absolute;
inset: 0;
border-radius: 24px;
background: linear-gradient(160deg, transparent 55%, #01216e47 100%);
pointer-events: none
}

.ctus .reach__right {
display: flex;
flex-direction: column;
gap: 32px;
padding-top: 16px
}

.ctus .reach__anchor {
display: flex;
flex-direction: column;
gap: 4px
}

.ctus .reach__anchor-label {
font-size: 14px;
line-height: 1.5;
letter-spacing: .1em;
color: #FF9BB3;
font-weight: 700;
text-transform: uppercase
}

.ctus .reach__anchor-val {
font-size: 19px;
line-height: 1.5;
color: #01216E;
font-weight: 600;
text-decoration: none;
transition: color .2s cubic-bezier(0.4, 0, 0.2, 1)
}

.ctus .reach__anchor-val:hover {
color: #FF9BB3
}

.ctus .reach__anchor-addr {
font-size: 19px;
line-height: 1.7;
color: #01216E;
font-weight: 600
}

.ctus .reach__divider {
width: 40px;
height: 3px;
background: linear-gradient(90deg, #FF9BB3 0%, #01216E 100%);
border-radius: 3px
}

.ctus .form-panel {
padding: 32px 64px 64px;
background: #EBF3EF;
position: relative
}

.ctus .form-panel::before {
content: "";
display: block;
width: 100%;
height: 4px;
background: linear-gradient(90deg, #FF9BB3 0%, #01216E 60%, #EBF3EF 100%);
position: absolute;
top: 0;
left: 0
}

.ctus .form-panel__inner {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 64px;
align-items: start
}

.ctus .form-panel__desc {
display: flex;
flex-direction: column;
gap: 24px;
padding-top: 8px
}

.ctus .form-panel__shape {
width: 32px;
height: 32px;
background: #FF9BB3;
border-radius: 3px;
transform: rotate(12deg)
}

.ctus .form-panel__h {
font-size: 33px;
line-height: 1.2;
color: #01216E;
font-weight: 700;
margin: 0
}

.ctus .form-panel__p {
font-size: 19px;
line-height: 1.7;
color: #2a3a5c;
margin: 0
}

.ctus .form-panel__stats {
display: flex;
flex-direction: column;
gap: 16px;
margin-top: 8px
}

.ctus .form-panel__stat {
display: flex;
align-items: center;
gap: 16px;
background: #fff;
border-radius: 24px;
padding: 16px 24px;
box-shadow: 2px 3px 2px 0 #ff9bb30f
}

.ctus .form-panel__stat-icon {
width: 40px;
height: 40px;
border-radius: 40px;
background: #EBF3EF;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0
}

.ctus .form-panel__stat-icon i {
color: #01216E;
font-size: 19px
}

.ctus .form-panel__stat-text {
font-size: 14px;
line-height: 1.5;
color: #2a3a5c
}

.ctus .form-panel__stat-text strong {
display: block;
font-size: 19px;
color: #01216E;
font-weight: 700
}

.ctus .frm {
background: #fff;
border-radius: 24px;
padding: 32px;
box-shadow: 2px 6px 20px 0 #01216e14;
display: flex;
flex-direction: column;
gap: 24px
}

.ctus .frm__row {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 16px
}

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

.ctus .frm__field label {
font-size: 14px;
line-height: 1.5;
color: #01216E;
font-weight: 600;
letter-spacing: .05em
}

.ctus .frm__field input[type="text"],
.ctus .frm__field input[type="email"],
.ctus .frm__field input[type="tel"] {
border: 1.5px solid #c8d8f0;
border-radius: 3px;
padding: 12px 16px;
font-size: 19px;
line-height: 1.5;
color: #01216E;
background: #fff;
outline: none;
transition: border-color .2s cubic-bezier(0.4, 0, 0.2, 1), box-shadow .25s cubic-bezier(0.0, 0, 0.2, 1);
width: 100%;
box-sizing: border-box
}

.ctus .frm__field input[type="text"]::placeholder,
.ctus .frm__field input[type="email"]::placeholder,
.ctus .frm__field input[type="tel"]::placeholder {
color: #a0b0cc;
transition: opacity .2s cubic-bezier(0.4, 0, 0.2, 1)
}

.ctus .frm__field input[type="text"]:focus::placeholder,
.ctus .frm__field input[type="email"]:focus::placeholder,
.ctus .frm__field input[type="tel"]:focus::placeholder {
opacity: 0
}

.ctus .frm__field input[type="text"]:focus,
.ctus .frm__field input[type="email"]:focus,
.ctus .frm__field input[type="tel"]:focus {
border-color: #FF9BB3;
box-shadow: inset 0 2px 4px #ff9bb314 0 0 0 3px #ff9bb32e
}

.ctus .frm__size-label {
font-size: 14px;
line-height: 1.5;
color: #01216E;
font-weight: 600;
letter-spacing: .05em
}

.ctus .frm__radios {
display: flex;
flex-direction: row;
flex-wrap: wrap;
gap: 8px
}

.ctus .frm__radio-opt {
position: relative
}

.ctus .frm__radio-opt input[type="radio"] {
position: absolute;
opacity: 0;
width: 0;
height: 0
}

.ctus .frm__radio-opt label {
display: inline-block;
padding: 8px 16px;
border-radius: 40px;
border: 1.5px solid #c8d8f0;
font-size: 14px;
line-height: 1.5;
color: #01216E;
cursor: pointer;
transition: background .15s cubic-bezier(0.4, 0, 0.2, 1), border-color .15s cubic-bezier(0.4, 0, 0.2, 1), color .15s cubic-bezier(0.4, 0, 0.2, 1);
user-select: none
}

.ctus .frm__radio-opt input[type="radio"]:checked+label {
background: #01216E;
border-color: #01216E;
color: #fff
}

.ctus .frm__radio-opt label:hover {
border-color: #FF9BB3;
background: #EBF3EF
}

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

.ctus .frm__privacy input[type="checkbox"] {
margin-top: 3px;
accent-color: #01216E;
width: 18px;
height: 18px;
flex-shrink: 0;
cursor: pointer
}

.ctus .frm__privacy-text {
font-size: 14px;
line-height: 1.7;
color: #2a3a5c
}

.ctus .frm__privacy-text a {
color: #01216E;
font-weight: 600;
text-decoration: underline;
text-underline-offset: 2px;
transition: color .15s cubic-bezier(0.4, 0, 0.2, 1)
}

.ctus .frm__privacy-text a:hover {
color: #FF9BB3
}

.ctus .frm__submit {
background: #01216E;
color: #fff;
border: none;
border-radius: 3px;
padding: 16px 32px;
font-size: 19px;
line-height: 1.5;
font-weight: 700;
cursor: pointer;
position: relative;
overflow: hidden;
transition: background .2s cubic-bezier(0.4, 0, 0.2, 1), box-shadow .25s cubic-bezier(0.0, 0, 0.2, 1);
box-shadow: 2px 6px 20px 0 #01216e14;
width: 100%
}

.ctus .frm__submit:hover {
background: #FF9BB3 !important;
color: #01216E;
box-shadow: 2px 8px 44px 0 #ff9bb321
}

.ctus .frm__submit:focus {
outline: 3px solid #FF9BB3;
outline-offset: 2px
}

.ctus .frm__submit:active {
background: #001550;
transform: translateY(1px)
}

@keyframes colorReveal {
from {
color: #EBF3EF
}

to {
color: #01216E
}
}

.ctus .reach__heading {
animation: colorReveal .28s cubic-bezier(0.4, 0, 0.2, 1) both
}

@media (max-width: 1024px) {
.ctus .reach {
grid-template-columns: 1fr;
gap: 32px;
padding: 32px 32px 24px
}

.ctus .reach__right {
flex-direction: row;
flex-wrap: wrap;
gap: 24px
}

.ctus .reach__img-wrap {
max-width: 340px
}

.ctus .form-panel {
padding: 24px 32px 48px
}

.ctus .form-panel__inner {
grid-template-columns: 1fr;
gap: 32px
}

.ctus .reach__heading {
font-size: 33px
}
}

@media (max-width: 768px) {
.ctus .reach {
padding: 24px 16px 16px;
gap: 24px
}

.ctus .reach__heading {
font-size: 33px
}

.ctus .frm__row {
grid-template-columns: 1fr
}

.ctus .form-panel {
padding: 16px 16px 32px
}

.ctus .frm {
padding: 24px 16px
}

.ctus .reach__right {
flex-direction: column
}
}

@media (max-width: 320px) {
.ctus .reach__heading {
font-size: 33px
}

.ctus .frm__radios {
flex-direction: column
}
}

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

.dgst .yr-band {
display: flex;
flex-direction: row;
align-items: stretch;
min-height: 520px;
padding: 64px 0;
position: relative;
background: #fff
}

.dgst .yr-band__img-col {
flex: 0 0 38%;
position: relative;
overflow: hidden;
border-radius: 0 24px 24px 0
}

.dgst .yr-band__img-col img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block
}

.dgst .yr-band__img-col::after {
content: "";
position: absolute;
inset: 0;
background: linear-gradient(to left, #fff 0%, #fff0 55%);
pointer-events: none
}

.dgst .yr-band__grid-bg {
position: absolute;
inset: 0;
pointer-events: none;
background-image: linear-gradient(#01216e0a 1px, transparent 1px), linear-gradient(90deg, #01216e0a 1px, transparent 1px);
background-size: 48px 48px
}

.dgst .yr-band__text {
flex: 1 1 0;
padding: 32px 64px 64px 56px;
display: flex;
flex-direction: column;
justify-content: center;
position: relative;
z-index: 1
}

.dgst .yr-band__eyebrow {
font-size: 14px;
letter-spacing: .12em;
color: #FF9BB3;
text-transform: uppercase;
margin-bottom: 16px;
font-weight: 700
}

.dgst .yr-band__h1 {
font-size: 62px;
line-height: 1.2;
color: #01216E;
margin-bottom: 24px;
font-weight: 800
}

.dgst .yr-band__h1 span {
display: inline-block;
opacity: 0;
animation: word-in .25s cubic-bezier(0.0, 0, 0.2, 1) forwards
}

.dgst .yr-band__h1 span:nth-child(1) {
animation-delay: .05s
}

.dgst .yr-band__h1 span:nth-child(2) {
animation-delay: .15s
}

.dgst .yr-band__h1 span:nth-child(3) {
animation-delay: .25s
}

.dgst .yr-band__h1 span:nth-child(4) {
animation-delay: .35s
}

@keyframes word-in {
from {
opacity: 0;
transform: translateY(10px)
}

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

.dgst .yr-band__desc {
font-size: 19px;
line-height: 1.7;
color: #2a3a5c;
max-width: 560px
}

.dgst .yr-band__corner-dec {
position: absolute;
width: 40px;
height: 40px;
pointer-events: none
}

.dgst .yr-band__corner-dec--tl {
top: 24px;
left: 24px;
border-top: 2px solid #01216e2e;
border-left: 2px solid #01216e2e;
border-radius: 3px 0 0 0
}

.dgst .yr-band__corner-dec--br {
bottom: 24px;
right: 24px;
border-bottom: 2px solid #01216e2e;
border-right: 2px solid #01216e2e;
border-radius: 0 0 3px 0
}

.dgst .divider-dashes {
display: flex;
flex-direction: row;
align-items: center;
gap: 4px;
padding: 0 64px;
overflow: hidden
}

.dgst .divider-dashes span {
display: block;
height: 2px;
background: #01216E;
border-radius: 3px;
flex-shrink: 0
}

.dgst .divider-dashes span:nth-child(odd) {
width: 32px;
opacity: .18
}

.dgst .divider-dashes span:nth-child(even) {
width: 12px;
opacity: .1
}

.dgst .metrics-strip {
background: #01216E;
padding: 64px;
position: relative;
overflow: hidden
}

.dgst .metrics-strip::before {
content: "";
position: absolute;
top: 0;
left: 0;
right: 0;
height: 50%;
background: #01216E
}

.dgst .metrics-strip::after {
content: "";
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 50%;
background: #FF9BB3;
clip-path: polygon(0 60%, 100% 0%, 100% 100%, 0% 100%)
}

.dgst .metrics-strip__inner {
position: relative;
z-index: 2;
max-width: 1200px;
margin: 0 auto
}

.dgst .metrics-strip__label {
font-size: 14px;
letter-spacing: .1em;
text-transform: uppercase;
color: #ebf3efb3;
margin-bottom: 32px
}

.dgst .metrics-strip__grid {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 24px
}

.dgst .metric-card {
background: #ebf3ef12;
border: 1px solid #ebf3ef26;
border-radius: 24px;
padding: 32px 24px;
position: relative;
box-shadow: 2px 6px 20px 0 #01216e14;
transition: background .2s cubic-bezier(0.4, 0, 0.2, 1), border-color .2s cubic-bezier(0.4, 0, 0.2, 1)
}

.dgst .metric-card:active {
background: #ebf3ef38
}

.dgst .metric-card__num {
font-size: 62px;
line-height: 1.2;
font-weight: 800;
color: #EBF3EF
}

.dgst .metric-card__unit {
font-size: 19px;
color: #FF9BB3;
font-weight: 700
}

.dgst .metric-card__desc {
font-size: 14px;
line-height: 1.5;
color: #ebf3efbf;
margin-top: 8px
}

.dgst .metric-card__counter {
position: absolute;
top: 16px;
right: 16px;
width: 28px;
height: 28px;
border-radius: 40px;
background: #ff9bb32e;
border: 1px solid #ff9bb359;
display: flex;
align-items: center;
justify-content: center;
font-size: 14px;
color: #FF9BB3;
font-weight: 700
}

.dgst .steps-section {
background: #EBF3EF;
padding: 64px
}

.dgst .steps-section__head {
display: flex;
flex-direction: row;
align-items: flex-end;
justify-content: space-between;
margin-bottom: 48px;
gap: 32px
}

.dgst .steps-section__shape {
width: 14px;
height: 14px;
background: #FF9BB3;
border-radius: 3px;
display: inline-block;
margin-right: 12px;
flex-shrink: 0;
vertical-align: middle
}

.dgst .steps-section__h2 {
font-size: 33px;
line-height: 1.2;
color: #01216E;
font-weight: 700
}

.dgst .steps-section__sub {
font-size: 14px;
line-height: 1.5;
color: #4a5a7a;
max-width: 320px;
text-align: right
}

.dgst .steps-list {
display: flex;
flex-direction: column;
gap: 0
}

.dgst .step-row {
display: grid;
grid-template-columns: 64px 1fr 140px;
align-items: start;
gap: 24px;
padding: 24px 0;
border-top: 1px solid #01216e1a;
transition: background .15s cubic-bezier(0.4, 0, 0.2, 1)
}

.dgst .step-row:last-child {
border-bottom: 1px solid #01216e1a
}

.dgst .step-row__num {
font-size: 33px;
line-height: 1.2;
font-weight: 800;
color: #01216e26
}

.dgst .step-row__h4 {
font-size: 19px;
line-height: 1.5;
color: #01216E;
font-weight: 700;
margin-bottom: 8px
}

.dgst .step-row__p {
font-size: 14px;
line-height: 1.7;
color: #3a4a6a
}

.dgst .step-row__time {
text-align: right;
padding-top: 4px
}

.dgst .step-row__time-val {
font-size: 19px;
font-weight: 700;
color: #FF9BB3
}

.dgst .step-row__time-lbl {
font-size: 14px;
color: #6a7a9a;
letter-spacing: .06em
}

.dgst .divider-dashes--light span {
background: #EBF3EF
}

.dgst .topics-section {
background: #fff;
padding: 64px
}

.dgst .topics-section__top {
margin-bottom: 48px
}

.dgst .topics-section__shape {
width: 10px;
height: 10px;
background: #01216E;
border-radius: 40px;
display: inline-block;
margin-right: 10px;
vertical-align: middle
}

.dgst .topics-section__h2 {
font-size: 33px;
line-height: 1.2;
color: #01216E;
font-weight: 700
}

.dgst .topics-section__intro {
font-size: 19px;
line-height: 1.7;
color: #3a4a6a;
max-width: 680px;
margin-top: 16px
}

.dgst .topics-mosaic {
display: grid;
grid-template-columns: 1fr 1fr 1fr;
grid-template-rows: auto auto;
gap: 24px
}

.dgst .topic-tile {
background: #EBF3EF;
border-radius: 24px;
padding: 32px;
position: relative;
box-shadow: 2px 3px 2px 0 #ff9bb30f;
transition: box-shadow .2s cubic-bezier(0.4, 0, 0.2, 1), transform .2s cubic-bezier(0.4, 0, 0.2, 1)
}

.dgst .topic-tile:hover {
box-shadow: 2px 8px 44px 0 #01216e21;
transform: translateY(-2px)
}

.dgst .topic-tile:active {
background: #01216E
}

.dgst .topic-tile:active .topic-tile__h3,
.dgst .topic-tile:active .topic-tile__p {
color: #EBF3EF
}

.dgst .topic-tile--wide {
grid-column: span 2
}

.dgst .topic-tile--tall {
grid-row: span 2;
display: flex;
flex-direction: column;
justify-content: space-between
}

.dgst .topic-tile__tag {
font-size: 14px;
letter-spacing: .1em;
text-transform: uppercase;
color: #FF9BB3;
font-weight: 700;
margin-bottom: 16px
}

.dgst .topic-tile__h3 {
font-size: 19px;
line-height: 1.5;
color: #01216E;
font-weight: 700;
margin-bottom: 8px;
transition: color .15s cubic-bezier(0.4, 0, 0.2, 1)
}

.dgst .topic-tile__p {
font-size: 14px;
line-height: 1.7;
color: #3a4a6a;
transition: color .15s cubic-bezier(0.4, 0, 0.2, 1)
}

.dgst .topic-tile__link {
display: inline-flex;
align-items: center;
gap: 8px;
font-size: 14px;
font-weight: 700;
color: #01216E;
text-decoration: none;
margin-top: 24px;
padding: 8px 16px;
border: 2px solid #01216E;
border-radius: 3px;
transition: background .18s cubic-bezier(0.4, 0, 0.2, 1), color .18s cubic-bezier(0.4, 0, 0.2, 1)
}

.dgst .topic-tile__link:hover {
background: #01216E;
color: #EBF3EF
}

.dgst .topic-tile__link:focus-visible {
outline: 3px solid #FF9BB3 !important;
outline-offset: 3px !important
}

.dgst .topic-tile__counter {
position: absolute;
top: 16px;
right: 16px;
width: 26px;
height: 26px;
border-radius: 40px;
background: #01216e14;
display: flex;
align-items: center;
justify-content: center;
font-size: 14px;
color: #01216E;
font-weight: 700
}

@media (max-width: 1024px) {
.dgst .yr-band {
flex-direction: column;
padding: 32px 0
}

.dgst .yr-band__img-col {
flex: 0 0 280px;
border-radius: 0 0 24px 24px
}

.dgst .yr-band__text {
padding: 32px 32px 48px
}

.dgst .yr-band__h1 {
font-size: 33px
}

.dgst .metrics-strip {
padding: 48px 32px
}

.dgst .metrics-strip__grid {
grid-template-columns: repeat(2, 1fr)
}

.dgst .steps-section {
padding: 48px 32px
}

.dgst .topics-section {
padding: 48px 32px
}

.dgst .topics-mosaic {
grid-template-columns: 1fr 1fr
}

.dgst .topic-tile--wide {
grid-column: span 2
}

.dgst .topic-tile--tall {
grid-row: span 1
}

.dgst .divider-dashes {
padding: 0 32px
}
}

@media (max-width: 768px) {
.dgst .yr-band__h1 {
font-size: 33px
}

.dgst .metrics-strip__grid {
grid-template-columns: 1fr 1fr;
gap: 16px
}

.dgst .step-row {
grid-template-columns: 40px 1fr;
grid-template-rows: auto auto
}

.dgst .step-row__time {
grid-column: 2;
text-align: left
}

.dgst .topics-mosaic {
grid-template-columns: 1fr
}

.dgst .topic-tile--wide {
grid-column: span 1
}

.dgst .steps-section__head {
flex-direction: column;
align-items: flex-start
}

.dgst .steps-section__sub {
text-align: left
}
}

@media (max-width: 320px) {
.dgst .yr-band__h1 {
font-size: 33px
}

.dgst .metrics-strip__grid {
grid-template-columns: 1fr
}

.dgst .metrics-strip {
padding: 32px 16px
}

.dgst .steps-section {
padding: 32px 16px
}

.dgst .topics-section {
padding: 32px 16px
}
}

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

.rt .strip {
display: block;
width: 100%;
height: 4px;
background: linear-gradient(90deg, #FF9BB3 0%, #01216E 60%, #EBF3EF 100%)
}

.rt .opener {
display: grid;
grid-template-columns: 1fr 320px;
min-height: 520px;
padding: 32px 64px 64px;
gap: 32px;
background: #fff;
position: relative
}

.rt .opener__text {
display: flex;
flex-direction: column;
justify-content: flex-end;
padding-bottom: 8px
}

.rt .opener__label {
font-size: 14px;
letter-spacing: .12em;
color: #01216E;
margin-bottom: 24px;
display: flex;
align-items: center;
gap: 8px
}

.rt .opener__label-dot {
width: 8px;
height: 8px;
background: #FF9BB3;
border-radius: 3px;
flex-shrink: 0
}

.rt .opener__h1 {
font-size: 62px;
line-height: 1.2;
color: #01216E;
margin: 0 0 24px;
max-width: 700px
}

.rt .opener__desc {
font-size: 19px;
line-height: 1.7;
color: #2a3a5c;
max-width: 560px;
margin: 0 0 32px
}

.rt .opener__cta {
display: inline-flex;
align-items: center;
gap: 8px;
background: #01216E;
color: #fff;
font-size: 14px;
letter-spacing: .06em;
padding: 16px 32px;
border-radius: 3px;
text-decoration: none;
border: none;
cursor: pointer;
transition: background .2s cubic-bezier(0.4, 0, 0.2, 1), box-shadow .2s cubic-bezier(0.4, 0, 0.2, 1);
box-shadow: 2px 6px 20px 0 #01216e14;
align-self: flex-start
}

.rt .opener__cta:hover {
background: #FF9BB3;
color: #01216E;
box-shadow: 2px 8px 44px 0 #01216e21
}

.rt .opener__cta:focus {
outline: 2px solid #FF9BB3;
outline-offset: 3px
}

.rt .opener__img-col {
position: relative;
display: flex;
align-items: stretch
}

.rt .opener__img-wrap {
width: 100%;
overflow: hidden;
border-radius: 3px
}

.rt .opener__img-wrap img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
opacity: .55;
display: block;
transition: opacity .25s cubic-bezier(0.4, 0, 0.2, 1)
}

.rt .opener__img-wrap:hover img {
opacity: .75
}

.rt .opener__deco-band {
position: absolute;
left: -12px;
top: 24px;
bottom: 24px;
width: 4px;
background: linear-gradient(180deg, #FF9BB3 0%, #01216E 100%);
border-radius: 3px
}

.rt .proof {
background: #01216E;
padding: 64px;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 64px;
align-items: center;
position: relative;
overflow: hidden
}

.rt .proof__vignette {
position: absolute;
inset: 0;
pointer-events: none;
background: radial-gradient(ellipse 80% 60% at 50% 50%, transparent 55%, #01216eb3 100%);
animation: vignette-breath 5s cubic-bezier(0.4, 0, 0.2, 1) infinite alternate
}

@keyframes vignette-breath {
from {
opacity: .6
}

to {
opacity: 1
}
}

.rt .proof__img-wrap {
border-radius: 3px;
overflow: hidden;
aspect-ratio: 4/3;
box-shadow: 2px 8px 44px 0 #01216e21
}

.rt .proof__img-wrap img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
filter: brightness(0.75);
transition: filter .22s cubic-bezier(0.4, 0, 0.2, 1)
}

.rt .proof__img-wrap:hover img {
filter: brightness(0.95)
}

.rt .proof__body {
position: relative;
z-index: 1
}

.rt .proof__anchor {
width: 32px;
height: 3px;
background: #FF9BB3;
border-radius: 3px;
margin-bottom: 24px
}

.rt .proof__h2 {
font-size: 33px;
line-height: 1.2;
color: #EBF3EF;
margin: 0 0 16px
}

.rt .proof__p {
font-size: 19px;
line-height: 1.7;
color: #ebf3efd1;
margin: 0 0 24px
}

.rt .proof__tags {
display: flex;
flex-direction: row;
flex-wrap: wrap;
gap: 8px
}

.rt .proof__tag {
font-size: 14px;
letter-spacing: .07em;
color: #01216E;
background: #EBF3EF;
padding: 4px 16px;
border-radius: 24px;
border: 1px solid #ebf3ef4d
}

.rt .scale {
background: #EBF3EF;
padding: 64px
}

.rt .scale__heading-row {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 32px;
margin-bottom: 48px
}

.rt .scale__geo {
width: 24px;
height: 24px;
background: #FF9BB3;
border-radius: 3px;
flex-shrink: 0;
margin-top: 6px
}

.rt .scale__h2 {
font-size: 33px;
line-height: 1.2;
color: #01216E;
margin: 0;
max-width: 560px
}

.rt .scale__grid {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 24px
}

.rt .scale__card {
background: #fff;
border-radius: 3px;
padding: 32px 24px;
box-shadow: 2px 3px 2px 0 #ff9bb30f;
position: relative;
border-top: 3px solid #FF9BB3;
transition: box-shadow .18s cubic-bezier(0.4, 0, 0.2, 1), transform .18s cubic-bezier(0.4, 0, 0.2, 1)
}

.rt .scale__card:hover {
box-shadow: 2px 8px 44px 0 #01216e21;
transform: translateY(-2px)
}

.rt .scale__num {
font-size: 62px;
line-height: 1.2;
color: #01216E;
display: block;
margin-bottom: 8px
}

.rt .scale__unit {
font-size: 19px;
color: #FF9BB3
}

.rt .scale__desc {
font-size: 14px;
line-height: 1.5;
color: #2a3a5c;
margin: 0
}

.rt .scale__counter-badge {
position: absolute;
top: 16px;
right: 16px;
width: 28px;
height: 28px;
background: #01216E;
border-radius: 3px;
display: flex;
align-items: center;
justify-content: center;
font-size: 14px;
color: #EBF3EF;
font-weight: 700
}

.rt .gap-sec {
padding: 64px;
background: #fff;
display: grid;
grid-template-columns: 2fr 1fr;
gap: 64px;
align-items: start
}

.rt .gap-sec__left {
display: flex;
flex-direction: column;
gap: 32px
}

.rt .gap-sec__quote-mark {
font-size: 62px;
line-height: 1;
color: #FF9BB3;
font-style: normal;
display: block;
margin-bottom: -16px;
user-select: none;
opacity: .5
}

.rt .gap-sec__h2 {
font-size: 33px;
line-height: 1.2;
color: #01216E;
margin: 0
}

.rt .gap-sec__p {
font-size: 19px;
line-height: 1.7;
color: #2a3a5c;
margin: 0
}

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

.rt .gap-sec__list li {
display: flex;
align-items: flex-start;
gap: 16px;
font-size: 19px;
line-height: 1.5;
color: #2a3a5c
}

.rt .gap-sec__list-num {
font-size: 14px;
font-weight: 700;
color: #fff;
background: #FF9BB3;
border-radius: 3px;
min-width: 24px;
height: 24px;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
margin-top: 2px
}

.rt .gap-sec__right {
position: relative
}

.rt .gap-sec__img-wrap {
border-radius: 3px;
overflow: hidden;
aspect-ratio: 3/4;
box-shadow: 2px 6px 20px 0 #01216e14
}

.rt .gap-sec__img-wrap img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
filter: brightness(0.85);
transition: filter .2s cubic-bezier(0.4, 0, 0.2, 1)
}

.rt .gap-sec__img-wrap:hover img {
filter: brightness(1)
}

.rt .gap-sec__counter {
position: absolute;
bottom: -8px;
left: -8px;
background: #EBF3EF;
border-radius: 3px;
padding: 8px 16px;
font-size: 14px;
color: #01216E;
font-weight: 700;
box-shadow: 2px 3px 2px 0 #01216e0f;
letter-spacing: .05em
}

.rt .voices {
background: #01216E;
padding: 64px;
position: relative;
overflow: hidden
}

.rt .voices__vignette {
position: absolute;
inset: 0;
pointer-events: none;
background: radial-gradient(ellipse 90% 70% at 50% 50%, transparent 50%, #01216ea6 100%);
animation: vignette-breath 6s cubic-bezier(0.0, 0, 0.2, 1) infinite alternate
}

.rt .voices__h2 {
font-size: 33px;
line-height: 1.2;
color: #EBF3EF;
margin: 0 0 48px;
position: relative;
z-index: 1
}

.rt .voices__grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 32px;
position: relative;
z-index: 1
}

.rt .voices__card {
background: #ebf3ef12;
border-radius: 3px;
padding: 32px;
border: 1px solid #ebf3ef26;
display: flex;
flex-direction: row;
gap: 24px;
align-items: flex-start;
box-shadow: 2px 6px 20px 0 #01216e14;
transition: background .2s cubic-bezier(0.4, 0, 0.2, 1)
}

.rt .voices__card:hover {
background: #ebf3ef1f
}

.rt .voices__portrait {
width: 80px;
height: 103px;
flex-shrink: 0;
overflow: hidden
}

.rt .voices__portrait img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
filter: brightness(0.88);
transition: filter .22s cubic-bezier(0.4, 0, 0.2, 1)
}

.rt .voices__portrait:hover img {
filter: brightness(1.05)
}

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

.rt .voices__quote {
font-size: 19px;
line-height: 1.7;
color: #ebf3efe0;
margin: 0;
font-style: italic
}

.rt .voices__name {
font-size: 14px;
letter-spacing: .08em;
color: #FF9BB3;
margin: 0
}

.rt .voices__role {
font-size: 14px;
color: #ebf3ef8c
}

.rt .invest {
padding: 64px;
background: #EBF3EF;
display: grid;
grid-template-columns: 1fr 2fr;
gap: 64px;
align-items: start
}

.rt .invest__left {
display: flex;
flex-direction: column;
gap: 24px
}

.rt .invest__geo {
width: 40px;
height: 40px;
border-radius: 24px;
background: linear-gradient(160deg, #FF9BB3 0%, #01216E 100%);
flex-shrink: 0
}

.rt .invest__h2 {
font-size: 33px;
line-height: 1.2;
color: #01216E;
margin: 0
}

.rt .invest__p {
font-size: 19px;
line-height: 1.7;
color: #2a3a5c;
margin: 0
}

.rt .invest__link {
display: inline-flex;
align-items: center;
gap: 8px;
color: #01216E;
font-size: 14px;
letter-spacing: .06em;
text-decoration: none;
border-bottom: 2px solid #FF9BB3;
padding-bottom: 4px;
transition: color .15s cubic-bezier(0.4, 0, 0.2, 1), border-color .15s cubic-bezier(0.4, 0, 0.2, 1);
align-self: flex-start
}

.rt .invest__link:hover {
color: #FF9BB3;
border-color: #01216E
}

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

.rt .invest__tier {
background: #fff;
border-radius: 3px;
padding: 24px 32px;
display: flex;
flex-direction: row;
align-items: center;
gap: 24px;
box-shadow: 2px 3px 2px 0 #ff9bb30f;
border-left: 4px solid #FF9BB3;
border-top: 1px solid #01216e14;
transition: box-shadow .18s cubic-bezier(0.4, 0, 0.2, 1);
position: relative
}

.rt .invest__tier:hover {
box-shadow: 2px 6px 20px 0 #01216e14
}

.rt .invest__tier--featured {
border-left-color: #01216E
}

.rt .invest__tier-badge {
position: absolute;
top: 16px;
right: 16px;
font-size: 14px;
color: #fff;
background: #01216E;
border-radius: 3px;
padding: 4px 8px;
letter-spacing: .06em
}

.rt .invest__tier-name {
font-size: 19px;
color: #01216E;
font-weight: 700;
min-width: 140px;
margin: 0
}

.rt .invest__tier-desc {
font-size: 14px;
line-height: 1.5;
color: #2a3a5c;
margin: 0;
flex: 1
}

.rt .invest__tier-price {
font-size: 33px;
line-height: 1.2;
color: #01216E;
white-space: nowrap;
margin: 0;
flex-shrink: 0
}

.rt .invest__tier-per {
font-size: 14px;
color: #FF9BB3;
display: block;
text-align: right
}

.rt .typewriter {
display: inline-block;
overflow: hidden;
white-space: nowrap;
border-right: 3px solid #FF9BB3;
animation: typewriter-text 2.8s steps(32, end) .4s both, blink-cursor .7s step-end infinite;
max-width: 100%
}

@keyframes typewriter-text {
from {
width: 0
}

to {
width: 100%
}
}

@keyframes blink-cursor {

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

50% {
border-color: transparent
}
}

@media (max-width: 1024px) {
.rt .opener {
grid-template-columns: 1fr 220px;
padding: 24px 32px 48px
}

.rt .opener__h1 {
font-size: 33px
}

.rt .scale__grid {
grid-template-columns: repeat(2, 1fr)
}

.rt .proof {
grid-template-columns: 1fr;
padding: 48px 32px;
gap: 32px
}

.rt .gap-sec {
grid-template-columns: 1fr;
padding: 48px 32px;
gap: 32px
}

.rt .gap-sec__right {
display: none
}

.rt .voices {
padding: 48px 32px
}

.rt .voices__grid {
grid-template-columns: 1fr
}

.rt .invest {
grid-template-columns: 1fr;
padding: 48px 32px;
gap: 32px
}

.rt .scale {
padding: 48px 32px
}
}

@media (max-width: 768px) {
.rt .opener {
grid-template-columns: 1fr;
padding: 24px 16px 32px
}

.rt .opener__img-col {
display: none
}

.rt .opener__h1 {
font-size: 33px
}

.rt .scale__grid {
grid-template-columns: 1fr 1fr;
gap: 16px
}

.rt .scale {
padding: 32px 16px
}

.rt .proof {
padding: 32px 16px
}

.rt .voices {
padding: 32px 16px
}

.rt .invest {
padding: 32px 16px
}

.rt .gap-sec {
padding: 32px 16px
}

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

.rt .invest__tier-price {
font-size: 19px
}
}

@media (max-width: 320px) {
.rt .opener__h1 {
font-size: 19px
}

.rt .scale__grid {
grid-template-columns: 1fr
}

.rt .scale__num {
font-size: 33px
}

.rt .invest__tier {
padding: 16px
}
}

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

.abt .reveal-item {
opacity: 0;
animation: abt-reveal .25s cubic-bezier(0.4, 0, 0.2, 1) forwards
}

.abt .reveal-item:nth-child(1) {
animation-delay: .05s
}

.abt .reveal-item:nth-child(2) {
animation-delay: .12s
}

.abt .reveal-item:nth-child(3) {
animation-delay: .19s
}

.abt .reveal-item:nth-child(4) {
animation-delay: .26s
}

.abt .reveal-item:nth-child(5) {
animation-delay: .33s
}

@keyframes abt-reveal {
from {
opacity: 0
}

to {
opacity: 1
}
}

.abt .title-blk {
position: relative;
padding: 64px 64px 96px;
background: radial-gradient(ellipse 70% 60% at 50% 40%, #fff 0%, #EBF3EF 55%, #01216E14 100%);
text-align: center;
overflow: hidden
}

.abt .title-blk__circles {
position: absolute;
inset: 0;
pointer-events: none
}

.abt .title-blk__circles span {
position: absolute;
border-radius: 50%;
border: 1.5px solid #FF9BB333
}

.abt .title-blk__circles span:nth-child(1) {
width: 320px;
height: 320px;
top: -80px;
left: -60px;
border-color: #01216E0D;
background: #FF9BB308
}

.abt .title-blk__circles span:nth-child(2) {
width: 200px;
height: 200px;
bottom: -40px;
right: 80px;
border-color: #FF9BB322;
background: transparent
}

.abt .title-blk__circles span:nth-child(3) {
width: 120px;
height: 120px;
top: 32px;
right: 200px;
border-color: #01216E11;
background: transparent
}

.abt .title-blk__circles span:nth-child(4) {
width: 64px;
height: 64px;
bottom: 48px;
left: 180px;
background: #FF9BB311;
border: none
}

.abt .title-blk__inner {
position: relative;
display: flex;
flex-direction: column;
align-items: center;
gap: 24px
}

.abt .title-blk__eyebrow {
display: inline-flex;
align-items: center;
gap: 8px;
font-size: 14px;
letter-spacing: .12em;
color: #01216E;
font-weight: 600;
text-transform: uppercase;
background: #EBF3EF;
padding: 4px 16px;
border-radius: 3px;
border: 1px solid #01216E22
}

.abt .title-blk__h1 {
font-size: 62px;
line-height: 1.2;
color: #01216E;
margin: 0;
max-width: 860px
}

.abt .title-blk__h1 em {
font-style: normal;
background: linear-gradient(180deg, transparent 55%, #FF9BB366 55%)
}

.abt .title-blk__counter-row {
display: flex;
flex-direction: row;
gap: 32px;
align-items: center;
justify-content: center;
flex-wrap: wrap
}

.abt .counter-pill {
display: flex;
flex-direction: column;
align-items: center;
gap: 4px;
background: #fff;
border: 1px solid #EBF3EF;
border-radius: 24px;
padding: 16px 32px;
box-shadow: 2px 6px 20px 0 #01216e14
}

.abt .counter-pill__num {
font-size: 33px;
line-height: 1.2;
font-weight: 700;
color: #01216E
}

.abt .counter-pill__num span {
color: #FF9BB3
}

.abt .counter-pill__label {
font-size: 14px;
line-height: 1.5;
color: #01216Eaa;
letter-spacing: .05em
}

.abt .title-blk__img-row {
display: flex;
flex-direction: row;
gap: 16px;
justify-content: center;
flex-wrap: wrap;
margin-top: 8px
}

.abt .title-blk__img-wrap {
position: relative;
border-radius: 24px;
overflow: hidden;
width: 340px;
height: 200px;
box-shadow: 2px 8px 44px 0 #01216e21
}

.abt .title-blk__img-wrap img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
filter: blur(0px);
transition: filter .22s cubic-bezier(0.4, 0, 0.2, 1)
}

.abt .title-blk__img-wrap:hover img {
filter: blur(0px) brightness(1.04)
}

.abt .title-blk__img-tint {
position: absolute;
inset: 0;
background: #FF9BB31a;
pointer-events: none;
border-radius: 24px
}

.abt .story-blk {
display: flex;
flex-direction: row;
align-items: stretch;
gap: 0;
background: #01216E;
padding: 0
}

.abt .story-blk__left {
flex: 0 0 60%;
padding: 64px;
display: flex;
flex-direction: column;
justify-content: center;
gap: 24px;
position: relative
}

.abt .story-blk__left::after {
content: '';
position: absolute;
right: 0;
top: 64px;
bottom: 64px;
width: 1px;
background: linear-gradient(180deg, transparent, #FF9BB355, transparent)
}

.abt .story-blk__anchor {
width: 28px;
height: 4px;
background: #FF9BB3;
border-radius: 3px;
display: block
}

.abt .story-blk__h2 {
font-size: 33px;
line-height: 1.2;
color: #fff;
margin: 0
}

.abt .story-blk__body {
font-size: 19px;
line-height: 1.7;
color: #EBF3EFcc;
margin: 0
}

.abt .story-blk__body strong {
color: #FF9BB3;
font-weight: 600
}

.abt .story-blk__dashed {
border: 2px dashed #FF9BB355;
border-radius: 3px;
padding: 16px 24px;
margin-top: 8px
}

.abt .story-blk__dashed p {
font-size: 14px;
line-height: 1.7;
color: #EBF3EF99;
margin: 0
}

.abt .story-blk__right {
flex: 0 0 40%;
position: relative;
min-height: 480px
}

.abt .story-blk__right img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
filter: blur(3px);
transition: filter .28s cubic-bezier(0.0, 0, 0.2, 1)
}

.abt .story-blk__right:hover img {
filter: blur(0px)
}

.abt .story-blk__right-overlay {
position: absolute;
inset: 0;
background: linear-gradient(270deg, transparent 40%, #01216E 100%);
pointer-events: none
}

.abt .team-blk {
padding: 64px;
background: #EBF3EF;
position: relative
}

.abt .team-blk__top {
display: flex;
flex-direction: row;
align-items: flex-end;
justify-content: space-between;
gap: 32px;
margin-bottom: 32px;
flex-wrap: wrap
}

.abt .team-blk__label {
display: flex;
flex-direction: row;
align-items: center;
gap: 8px
}

.abt .team-blk__shape {
width: 16px;
height: 16px;
background: #FF9BB3;
border-radius: 3px;
transform: rotate(12deg);
flex-shrink: 0
}

.abt .team-blk__h2 {
font-size: 33px;
line-height: 1.2;
color: #01216E;
margin: 0
}

.abt .team-blk__sub {
font-size: 19px;
line-height: 1.5;
color: #01216Eaa;
margin: 0;
max-width: 420px;
text-align: right
}

.abt .team-grid {
display: grid;
grid-template-columns: 1fr 1fr 3fr;
gap: 24px;
align-items: start
}

.abt .team-card {
background: #fff;
border-radius: 24px;
overflow: hidden;
box-shadow: 2px 3px 2px 0 #01216e0f;
transition: box-shadow .2s cubic-bezier(0.4, 0, 0.2, 1)
}

.abt .team-card:hover {
box-shadow: 2px 8px 44px 0 #01216e21
}

.abt .team-card__img-wrap {
width: 100%;
aspect-ratio: 4/5;
overflow: hidden
}

.abt .team-card__img-wrap img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
filter: blur(3px);
transition: filter .22s cubic-bezier(0.4, 0, 0.2, 1)
}

.abt .team-card:hover .team-card__img-wrap img {
filter: blur(0px)
}

.abt .team-card__info {
padding: 16px 24px
}

.abt .team-card__name {
font-size: 19px;
line-height: 1.5;
font-weight: 700;
color: #01216E;
margin: 0 0 4px
}

.abt .team-card__role {
font-size: 14px;
line-height: 1.5;
color: #FF9BB3;
letter-spacing: .06em;
font-weight: 600;
text-transform: uppercase;
margin: 0
}

.abt .team-feature {
background: #01216E;
border-radius: 24px;
padding: 32px;
display: flex;
flex-direction: column;
gap: 24px;
box-shadow: 2px 6px 20px 0 #01216e14;
position: relative
}

.abt .team-feature__img-wrap {
width: 100%;
height: 220px;
border-radius: 3px;
overflow: hidden
}

.abt .team-feature__img-wrap img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
filter: blur(3px);
transition: filter .25s cubic-bezier(0.4, 0, 0.2, 1)
}

.abt .team-feature:hover .team-feature__img-wrap img {
filter: blur(0px)
}

.abt .team-feature__text {
font-size: 19px;
line-height: 1.7;
color: #EBF3EFcc;
margin: 0
}

.abt .team-feature__text strong {
color: #FF9BB3
}

.abt .team-feature__code-row {
display: flex;
flex-direction: row;
gap: 16px;
align-items: stretch;
flex-wrap: wrap
}

.abt .code-pane {
flex: 1 1 180px;
background: #0b1a3e;
border-radius: 3px;
padding: 16px;
font-size: 14px;
line-height: 1.7;
color: #EBF3EF99;
font-family: monospace;
box-shadow: inset 2px 4px 6px 0 #01216e2e
}

.abt .code-pane__label {
font-size: 14px;
color: #FF9BB3;
letter-spacing: .08em;
margin-bottom: 8px;
display: block;
font-family: monospace
}

.abt .code-pane span.kw {
color: #FF9BB3
}

.abt .code-pane span.val {
color: #fff
}

.abt .code-pane span.cm {
color: #01216Eaa
}

.abt .output-pane {
flex: 1 1 180px;
background: #EBF3EF;
border-radius: 3px;
padding: 16px;
display: flex;
flex-direction: column;
gap: 8px;
box-shadow: inset 2px 4px 6px 0 #01216e0f
}

.abt .output-pane__label {
font-size: 14px;
color: #01216Eaa;
letter-spacing: .08em;
font-weight: 600;
text-transform: uppercase
}

.abt .output-bar {
display: flex;
flex-direction: row;
align-items: center;
gap: 8px
}

.abt .output-bar__track {
flex: 1;
height: 8px;
background: #01216E22;
border-radius: 40px;
overflow: hidden
}

.abt .output-bar__fill {
height: 100%;
background: linear-gradient(90deg, #FF9BB3, #01216E);
border-radius: 40px
}

.abt .output-bar__val {
font-size: 14px;
color: #01216E;
font-weight: 700;
min-width: 36px;
text-align: right
}

.abt .vals-blk {
padding: 64px;
background: radial-gradient(ellipse 80% 70% at 50% 50%, #fff 0%, #EBF3EF 60%, #01216E11 100%);
position: relative
}

.abt .vals-blk__head {
display: flex;
flex-direction: row;
align-items: center;
gap: 8px;
margin-bottom: 32px
}

.abt .vals-blk__diamond {
width: 14px;
height: 14px;
background: #FF9BB3;
transform: rotate(45deg);
border-radius: 3px;
flex-shrink: 0
}

.abt .vals-blk__h2 {
font-size: 33px;
line-height: 1.2;
color: #01216E;
margin: 0
}

.abt .vals-layout {
display: grid;
grid-template-columns: 3fr 2fr;
gap: 32px;
align-items: start
}

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

.abt .val-item {
display: flex;
flex-direction: row;
gap: 16px;
align-items: flex-start;
padding: 24px;
background: #fff;
border-radius: 3px;
border: 1px solid #EBF3EF;
box-shadow: 2px 3px 2px 0 #ff9bb30f;
transition: box-shadow .18s cubic-bezier(0.4, 0, 0.2, 1), border-color .18s cubic-bezier(0.4, 0, 0.2, 1)
}

.abt .val-item:hover {
box-shadow: 2px 6px 20px 0 #01216e14;
border-color: #FF9BB355
}

.abt .val-item__num {
font-size: 33px;
line-height: 1.2;
font-weight: 700;
color: #FF9BB3;
min-width: 48px;
flex-shrink: 0
}

.abt .val-item__body {
display: flex;
flex-direction: column;
gap: 4px
}

.abt .val-item__h {
font-size: 19px;
line-height: 1.5;
font-weight: 700;
color: #01216E;
margin: 0
}

.abt .val-item__p {
font-size: 14px;
line-height: 1.7;
color: #01216Eaa;
margin: 0
}

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

.abt .vals-aside__img-wrap {
width: 100%;
height: 260px;
border-radius: 24px;
overflow: hidden;
box-shadow: 2px 8px 44px 0 #01216e21
}

.abt .vals-aside__img-wrap img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
filter: blur(3px);
transition: filter .2s cubic-bezier(0.0, 0, 0.2, 1)
}

.abt .vals-aside__img-wrap:hover img {
filter: blur(0px)
}

.abt .vals-aside__quote {
background: #01216E;
border-radius: 24px;
padding: 24px 32px;
box-shadow: 2px 6px 20px 0 #01216e14
}

.abt .vals-aside__quote p {
font-size: 19px;
line-height: 1.7;
color: #EBF3EFcc;
margin: 0 0 16px
}

.abt .vals-aside__quote-meta {
display: flex;
flex-direction: row;
align-items: center;
gap: 8px
}

.abt .vals-aside__quote-dot {
width: 8px;
height: 8px;
background: #FF9BB3;
border-radius: 50%;
flex-shrink: 0
}

.abt .vals-aside__quote-name {
font-size: 14px;
color: #EBF3EF99;
letter-spacing: .06em
}

@media (max-width: 1024px) {
.abt .title-blk {
padding: 64px 32px
}

.abt .story-blk {
flex-direction: column
}

.abt .story-blk__left {
flex: none;
padding: 64px 32px
}

.abt .story-blk__right {
flex: none;
min-height: 300px
}

.abt .team-blk {
padding: 64px 32px
}

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

.abt .team-feature {
grid-column: span 2
}

.abt .vals-blk {
padding: 64px 32px
}

.abt .vals-layout {
grid-template-columns: 1fr
}
}

@media (max-width: 768px) {
.abt .title-blk {
padding: 32px 16px 64px
}

.abt .title-blk__h1 {
font-size: 33px
}

.abt .title-blk__img-wrap {
width: 100%;
max-width: 340px
}

.abt .story-blk__left {
padding: 32px 16px
}

.abt .story-blk__h2 {
font-size: 33px
}

.abt .team-blk {
padding: 32px 16px
}

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

.abt .team-feature {
grid-column: span 1
}

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

.abt .team-blk__sub {
text-align: left
}

.abt .vals-blk {
padding: 32px 16px
}

.abt .vals-aside__img-wrap {
height: 180px
}
}

@media (max-width: 320px) {
.abt .title-blk__h1 {
font-size: 33px
}

.abt .counter-pill {
padding: 8px 16px
}

.abt .counter-pill__num {
font-size: 19px
}
}

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

.success-pg .confirm-card {
background: #fff;
border-radius: 24px;
box-shadow: 2px 8px 44px 0 #01216e21;
padding: 64px 48px;
max-width: 560px;
width: 100%;
text-align: center
}

.success-pg .confirm-card .icon-wrap {
width: 72px;
height: 72px;
border-radius: 40px;
background: #EBF3EF;
display: flex;
align-items: center;
justify-content: center;
margin: 0 auto 32px;
box-shadow: inset 0 4px 6px 0 #ff9bb32e
}

.success-pg .confirm-card .icon-wrap svg {
display: block
}

.success-pg .confirm-card .confirm-heading {
font-size: 33px;
line-height: 1.2;
color: #01216E;
margin: 0 0 16px;
letter-spacing: -.01em
}

.success-pg .confirm-card .confirm-sub {
font-size: 19px;
line-height: 1.7;
color: #2a3a5e;
margin: 0 0 32px
}

.success-pg .confirm-card .confirm-note {
font-size: 14px;
line-height: 1.5;
color: #4a5a7a;
margin: 0 0 32px;
letter-spacing: .02em
}

.success-pg .confirm-card .divider-line {
width: 48px;
height: 3px;
border-radius: 3px;
background: #FF9BB3;
margin: 0 auto 32px
}

.success-pg .confirm-card .back-btn {
display: inline-block;
background: #01216E;
color: #fff;
font-size: 14px;
line-height: 1.5;
letter-spacing: .06em;
padding: 16px 32px;
border-radius: 3px;
text-decoration: none;
border: none;
cursor: pointer;
transition: background .2s cubic-bezier(0.4, 0, 0.2, 1), box-shadow .15s cubic-bezier(0.0, 0, 0.2, 1);
box-shadow: 2px 6px 20px 0 #01216e14
}

.success-pg .confirm-card .back-btn:hover {
background: #021d5c;
box-shadow: 2px 8px 44px 0 #01216e21
}

.success-pg .confirm-card .back-btn:focus {
outline: 2px solid #FF9BB3;
outline-offset: 3px
}

.success-pg .confirm-card .back-btn:active {
background: #011440
}

@media (max-width: 768px) {
.success-pg .confirm-card {
padding: 32px 24px
}

.success-pg .confirm-card .confirm-heading {
font-size: 33px
}
}

@media (max-width: 320px) {
.success-pg {
padding: 32px 16px
}

.success-pg .confirm-card {
padding: 24px 16px
}
}