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

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

.brand-hd {
background: linear-gradient(135deg, #14454F 0%, #1a5f6e 60%, #0e3039 100%);
position: relative;
overflow: hidden
}

.brand-hd::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: repeating-linear-gradient(45deg, transparent, transparent 32px, #c34cf60a 32px, #c34cf60a 33px);
pointer-events: none
}

.brand-hd__accent-bar {
height: 4px;
background: linear-gradient(90deg, #C34CF6 0%, #F9FFAE 50%, #C34CF6 100%);
width: 100%
}

.brand-hd__body {
max-width: 1366px;
margin: 0 auto;
padding: 0 32px;
display: flex;
align-items: center;
justify-content: space-between;
gap: 32px;
min-height: 96px
}

.brand-hd__identity {
display: flex;
align-items: center;
gap: 16px;
flex-shrink: 0;
text-decoration: none
}

.brand-hd__logo-box {
width: 62px;
height: 62px;
border: 2px solid #C34CF6;
border-radius: 18px;
background: #f9ffae1f;
box-shadow: -1px 6px 28px 1px #c34cf61a;
display: flex;
align-items: center;
justify-content: center;
overflow: hidden;
flex-shrink: 0
}

.brand-hd__logo-box img {
width: 54px;
height: 54px;
object-fit: contain;
display: block
}

.brand-hd__name-group {
display: flex;
flex-direction: column;
gap: 4px
}

.brand-hd__name {
font-family: 'EB Garamond', Georgia, serif;
font-size: 28px;
font-weight: 700;
color: #F9FFAE;
line-height: 1.1;
letter-spacing: .01em
}

.brand-hd__tagline {
font-family: 'EB Garamond', Georgia, serif;
font-size: 16px;
color: #f9ffaeb8;
line-height: 1.1;
letter-spacing: .06em
}

.brand-hd__menu {
display: flex;
align-items: center;
gap: 8px;
flex-wrap: wrap;
justify-content: center
}

.brand-hd__menu a {
font-family: 'EB Garamond', Georgia, serif;
font-size: 18px;
color: #f9ffaee0;
text-decoration: none;
padding: 8px 16px;
border-radius: 6px;
line-height: 1.1;
transition: color .38s cubic-bezier(0.34, 1.2, 0.64, 1), background .38s cubic-bezier(0.34, 1.2, 0.64, 1);
white-space: nowrap;
min-height: 44px;
display: flex;
align-items: center
}

.brand-hd__menu a:hover,
.brand-hd__menu a:focus {
color: #F9FFAE;
background: #c34cf62e;
outline: none
}

.brand-hd__menu a:focus-visible {
outline: 2px solid #C34CF6;
outline-offset: 2px
}

.brand-hd__action {
flex-shrink: 0
}

.brand-hd__contact-btn {
font-family: 'EB Garamond', Georgia, serif;
font-size: 18px;
font-weight: 700;
color: #14454F;
background: #F9FFAE;
border: none;
border-radius: 18px;
padding: 8px 32px;
min-height: 48px;
text-decoration: none;
display: inline-flex;
align-items: center;
gap: 8px;
box-shadow: -1px 6px 28px 1px #c34cf61a;
transition: background .42s cubic-bezier(0.34, 1.2, 0.64, 1), box-shadow .42s ease-in-out;
white-space: nowrap
}

.brand-hd__contact-btn:hover,
.brand-hd__contact-btn:focus {
background: #eef5a0;
box-shadow: -1px 12px 44px 1px #c34cf61a;
outline: none;
color: #14454F;
text-decoration: none
}

.brand-hd__contact-btn:focus-visible {
outline: 2px solid #F9FFAE;
outline-offset: 3px
}

.brand-hd__sub {
background: #0000002e;
border-top: 1px solid #c34cf62e
}

.brand-hd__sub-body {
max-width: 1366px;
margin: 0 auto;
padding: 0 32px;
display: flex;
align-items: center;
justify-content: space-between;
gap: 16px;
min-height: 48px
}

.brand-hd__year {
font-family: 'EB Garamond', Georgia, serif;
font-size: 16px;
color: #f9ffae8c;
letter-spacing: .08em
}

.brand-hd__contact-row {
display: flex;
align-items: center;
gap: 32px
}

.brand-hd__contact-item {
display: flex;
align-items: center;
gap: 8px;
font-family: 'EB Garamond', Georgia, serif;
font-size: 16px;
color: #f9ffaeb8;
text-decoration: none;
transition: color .35s ease-in-out
}

.brand-hd__contact-item:hover {
color: #F9FFAE
}

.brand-hd__contact-item .lnr {
font-size: 16px;
color: #C34CF6
}

@media (max-width: 1024px) {
.brand-hd__body {
flex-wrap: wrap;
padding: 16px 32px;
min-height: auto;
gap: 16px
}

.brand-hd__menu {
order: 3;
width: 100%;
justify-content: flex-start;
padding-bottom: 8px
}

.brand-hd__action {
order: 2
}

.brand-hd__sub-body {
flex-wrap: wrap;
padding: 8px 32px;
gap: 8px
}

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

@media (max-width: 768px) {
.brand-hd__body {
padding: 16px
}

.brand-hd__name {
font-size: 22px
}

.brand-hd__menu a {
font-size: 16px;
padding: 8px
}

.brand-hd__sub-body {
padding: 8px 16px
}

.brand-hd__contact-row {
gap: 8px
}
}

@media (max-width: 480px) {
.brand-hd__tagline {
display: none
}

.brand-hd__contact-row {
flex-direction: column;
align-items: flex-start
}
}

.pg-footer {
background: #14454F;
position: relative;
overflow: hidden
}

.pg-footer::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: repeating-linear-gradient(0deg, transparent, transparent 48px, #c34cf60d 48px, #c34cf60d 49px), repeating-linear-gradient(90deg, transparent, transparent 48px, #f9ffae08 48px, #f9ffae08 49px);
pointer-events: none
}

.pg-footer__accent {
height: 3px;
background: linear-gradient(90deg, #C34CF6 0%, #F9FFAE 40%, #C34CF6 100%)
}

.pg-footer__upper {
max-width: 1366px;
margin: 0 auto;
padding: 48px 32px 32px;
display: grid;
grid-template-columns: 1fr 1fr 1fr;
gap: 48px;
position: relative
}

.pg-footer__brand-col {
display: flex;
flex-direction: column;
gap: 16px
}

.pg-footer__logo-row {
display: flex;
align-items: center;
gap: 16px
}

.pg-footer__logo-box {
width: 58px;
height: 58px;
border: 2px solid #c34cf699;
border-radius: 18px;
background: #f9ffae14;
box-shadow: -1px 2px 4px 1px #c34cf612;
display: flex;
align-items: center;
justify-content: center;
overflow: hidden;
flex-shrink: 0
}

.pg-footer__logo-box img {
width: 50px;
height: 50px;
object-fit: contain;
display: block
}

.pg-footer__brand-name {
font-family: 'EB Garamond', Georgia, serif;
font-size: 22px;
font-weight: 700;
color: #F9FFAE;
line-height: 1.1
}

.pg-footer__brand-year {
font-family: 'EB Garamond', Georgia, serif;
font-size: 16px;
color: #f9ffae80;
letter-spacing: .06em
}

.pg-footer__desc {
font-family: 'EB Garamond', Georgia, serif;
font-size: 18px;
color: #f9ffaeb3;
line-height: 1.6
}

.pg-footer__contact-col {
display: flex;
flex-direction: column;
gap: 16px
}

.pg-footer__col-label {
font-family: 'EB Garamond', Georgia, serif;
font-size: 16px;
font-weight: 700;
color: #C34CF6;
letter-spacing: .1em;
text-transform: uppercase;
line-height: 1.1
}

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

.pg-footer__contact-list li a,
.pg-footer__contact-list li span {
font-family: 'EB Garamond', Georgia, serif;
font-size: 18px;
color: #f9ffaec7;
text-decoration: none;
display: flex;
align-items: flex-start;
gap: 8px;
line-height: 1.6;
transition: color .35s ease-in-out
}

.pg-footer__contact-list li a:hover {
color: #F9FFAE
}

.pg-footer__contact-list .lnr {
font-size: 18px;
color: #C34CF6;
flex-shrink: 0;
margin-top: 2px
}

.pg-footer__links-col {
display: flex;
flex-direction: column;
gap: 16px
}

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

.pg-footer__link-list li a {
font-family: 'EB Garamond', Georgia, serif;
font-size: 18px;
color: #f9ffaec7;
text-decoration: none;
display: flex;
align-items: center;
gap: 8px;
padding: 4px 0;
line-height: 1.6;
transition: color .38s cubic-bezier(0.34, 1.2, 0.64, 1)
}

.pg-footer__link-list li a:hover {
color: #F9FFAE
}

.pg-footer__link-dot {
width: 6px;
height: 6px;
border-radius: 0;
background: #C34CF6;
flex-shrink: 0;
transform: rotate(45deg);
display: inline-block
}

.pg-footer__divider {
max-width: 1366px;
margin: 0 auto;
padding: 0 32px;
position: relative
}

.pg-footer__divider-line {
border: none;
border-top: 1px solid #c34cf633;
margin: 0
}

.pg-footer__lower {
max-width: 1366px;
margin: 0 auto;
padding: 16px 32px 32px;
display: flex;
align-items: center;
justify-content: space-between;
gap: 16px;
position: relative;
flex-wrap: wrap
}

.pg-footer__copy {
font-family: 'EB Garamond', Georgia, serif;
font-size: 16px;
color: #f9ffae73;
line-height: 1.6
}

.pg-footer__legal-links {
display: flex;
align-items: center;
gap: 16px;
flex-wrap: wrap
}

.pg-footer__legal-links a {
font-family: 'EB Garamond', Georgia, serif;
font-size: 16px;
color: #f9ffae8c;
text-decoration: none;
transition: color .35s ease-in-out;
white-space: nowrap
}

.pg-footer__legal-links a:hover {
color: #F9FFAE
}

.pg-footer__legal-sep {
width: 1px;
height: 14px;
background: #c34cf659;
display: inline-block
}

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

.pg-footer__brand-col {
grid-column: 1 / -1
}
}

@media (max-width: 768px) {
.pg-footer__upper {
grid-template-columns: 1fr;
padding: 32px 16px;
gap: 32px
}

.pg-footer__brand-col {
grid-column: auto
}

.pg-footer__lower {
padding: 16px 16px 32px;
flex-direction: column;
align-items: flex-start
}

.pg-footer__divider {
padding: 0 16px
}
}

@media (max-width: 480px) {
.pg-footer__legal-links {
flex-direction: column;
align-items: flex-start;
gap: 8px
}

.pg-footer__legal-sep {
display: none
}
}

.ck-tray {
display: none;
position: fixed;
top: 32px;
right: 32px;
width: 360px;
background: #fff;
border-radius: 18px;
box-shadow: -1px 12px 44px 1px #14454f1a;
border: 1px solid #c34cf62e;
z-index: 4000;
transform: translateY(-24px);
opacity: 0;
transition: transform .42s cubic-bezier(0.34, 1.2, 0.64, 1), opacity .42s ease-in-out;
overflow: hidden
}

.ck-tray--visible {
transform: translateY(0);
opacity: 1
}

.ck-tray__bar {
height: 3px;
background: linear-gradient(90deg, #C34CF6 0%, #F9FFAE 100%)
}

.ck-tray__body {
padding: 16px 16px 8px
}

.ck-tray__desc {
font-family: 'EB Garamond', Georgia, serif;
font-size: 16px;
color: #14454F;
line-height: 1.6;
margin: 0 0 8px
}

.ck-tray__policy {
font-family: 'EB Garamond', Georgia, serif;
font-size: 16px;
color: #14454fa6;
line-height: 1.6;
margin: 0 0 16px
}

.ck-tray__policy a {
color: #C34CF6;
text-decoration: underline
}

.ck-tray__headline {
font-family: 'EB Garamond', Georgia, serif;
font-size: 18px;
font-weight: 700;
color: #14454F;
line-height: 1.1;
margin: 0 0 8px
}

.ck-tray__btns {
display: flex;
gap: 8px;
padding: 0 16px 16px
}

.ck-tray__btn {
flex: 1;
font-family: 'EB Garamond', Georgia, serif;
font-size: 18px;
font-weight: 700;
border-radius: 6px;
padding: 8px 16px;
min-height: 44px;
cursor: pointer;
background: transparent;
transition: background .38s cubic-bezier(0.34, 1.2, 0.64, 1), color .38s cubic-bezier(0.34, 1.2, 0.64, 1)
}

.ck-tray__btn--accept {
border: 2px solid #14454F;
color: #14454F
}

.ck-tray__btn--accept:hover,
.ck-tray__btn--accept:focus {
background: #14454F;
color: #F9FFAE;
outline: none
}

.ck-tray__btn--decline {
border: 2px solid #14454f59;
color: #14454fa6
}

.ck-tray__btn--decline:hover,
.ck-tray__btn--decline:focus {
background: #14454f14;
color: #14454F;
outline: none
}

@media (max-width: 480px) {
.ck-tray {
width: calc(100vw - 32px);
right: 16px;
top: 16px
}
}

.doc-box {
max-width: 1366px;
margin: 0 auto;
padding: 48px 32px
}

.doc-box p {
font-size: 18px;
line-height: 1.6;
color: #14454F;
margin-bottom: 16px
}

.doc-box ul,
.doc-box ol {
padding-left: 32px;
margin-bottom: 16px
}

.doc-box li {
font-size: 18px;
line-height: 1.6;
color: #14454F;
margin-bottom: 8px
}

.doc-box ul li {
list-style-type: disc
}

.doc-box ol li {
list-style-type: decimal
}

.doc-box strong,
.doc-box b {
font-weight: 700;
color: #14454F
}

.doc-box a {
color: #C34CF6;
text-decoration: underline;
text-underline-offset: 3px;
transition: color .38s cubic-bezier(0.34, 1.2, 0.64, 1), text-decoration-color .42s ease-in-out
}

.doc-box a:hover {
color: #9b2fd4;
text-decoration-color: transparent
}

.doc-box table {
width: 100%;
border-collapse: collapse;
margin-bottom: 32px;
font-size: 16px;
border-radius: 18px;
overflow: hidden;
box-shadow: -1px 6px 28px 1px #c34cf61a
}

.doc-box thead {
background-color: #14454F
}

.doc-box thead th {
color: #F9FFAE;
font-size: 16px;
font-weight: 700;
letter-spacing: .04em;
padding: 16px;
text-align: left;
line-height: 1.1
}

.doc-box tbody tr {
border-bottom: 1px solid #14454f1f;
transition: background-color .35s ease-in-out
}

.doc-box tbody tr:last-child {
border-bottom: none
}

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

.doc-box tbody tr:hover {
background-color: #c34cf60f
}

.doc-box td {
padding: 16px;
font-size: 16px;
line-height: 1.6;
color: #14454F;
vertical-align: top
}

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

.doc-box table {
display: block;
overflow-x: auto;
-webkit-overflow-scrolling: touch
}

.doc-box p,
.doc-box li {
font-size: 16px
}
}

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

.doc-box thead th,
.doc-box td {
padding: 8px;
font-size: 16px
}
}

.cnt-us {
background: #fff;
overflow-x: clip;
position: relative
}

.cnt-us .pg-title {
background: #14454F;
padding: 96px 48px;
position: relative;
display: flex;
flex-direction: row;
align-items: stretch;
gap: 0;
max-width: 100%;
overflow: hidden
}

.cnt-us .pg-title__text-zone {
flex: 0 0 55%;
padding: 48px 48px 48px 0;
display: flex;
flex-direction: column;
justify-content: center;
position: relative;
z-index: 2
}

.cnt-us .pg-title__label {
font-size: 16px;
letter-spacing: .18em;
color: #C34CF6;
text-transform: uppercase;
margin-bottom: 16px;
line-height: 1.1;
font-weight: 400
}

.cnt-us .pg-title__h1 {
font-size: 72px;
line-height: 1.1;
color: #F9FFAE;
font-weight: 700;
margin: 0 0 32px;
letter-spacing: -.02em
}

.cnt-us .pg-title__arrow {
width: 48px;
height: 4px;
background: #C34CF6;
border-radius: 0;
margin-top: 16px;
position: relative
}

.cnt-us .pg-title__arrow::after {
content: '';
position: absolute;
right: -1px;
top: -6px;
width: 0;
height: 0;
border-left: 10px solid #C34CF6;
border-top: 8px solid transparent;
border-bottom: 8px solid transparent
}

.cnt-us .pg-title__img-zone {
flex: 0 0 45%;
position: relative;
min-height: 400px;
overflow: hidden;
border-radius: 18px
}

.cnt-us .pg-title__img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
transition: transform .45s cubic-bezier(0.34, 1.2, 0.64, 1)
}

.cnt-us .pg-title__img-zone:hover .pg-title__img {
transform: scale(1.04)
}

.cnt-us .pg-title__vignette {
position: absolute;
inset: 0;
background: linear-gradient(135deg, #14454fb8 0%, #14454f1a 60%, #14454f9e 100%);
border-radius: 18px;
pointer-events: none
}

.cnt-us .pg-title__deco-line {
position: absolute;
left: 0;
top: 0;
width: 6px;
height: 100%;
background: linear-gradient(180deg, #C34CF6 0%, #F9FFAE 100%);
border-radius: 0;
z-index: 3
}

.cnt-us .pg-title__math {
position: absolute;
right: 48%;
top: 50%;
transform: translateY(-50%);
font-size: 220px;
line-height: 1.1;
color: transparent;
-webkit-text-stroke: 1px #f9ffae12;
font-weight: 700;
pointer-events: none;
z-index: 1;
user-select: none
}

.cnt-us .divider-tri {
width: 100%;
overflow: hidden;
line-height: 0;
background: #14454F
}

.cnt-us .divider-tri svg {
display: block;
width: 100%
}

.cnt-us .contact-body {
background: #fff;
padding: 96px 48px;
position: relative;
display: flex;
flex-direction: row;
gap: 48px;
max-width: 1366px;
margin: 0 auto;
align-items: flex-start
}

.cnt-us .contact-body__sidebar {
flex: 0 0 320px;
display: flex;
flex-direction: column;
gap: 32px;
position: sticky;
top: 32px
}

.cnt-us .contact-body__sidebar-grid {
display: grid;
grid-template-columns: 1fr;
gap: 16px
}

.cnt-us .info-card {
background: #14454F;
border-radius: 18px;
padding: 32px;
color: #fff;
position: relative;
overflow: hidden;
box-shadow: -1px 6px 28px 1px #14454f1a;
transition: box-shadow .38s ease-in-out
}

.cnt-us .info-card:hover {
box-shadow: -1px 12px 44px 1px #14454f1a
}

.cnt-us .info-card__icon {
width: 36px;
height: 36px;
margin-bottom: 16px;
display: flex;
flex-direction: row;
align-items: center;
justify-content: center
}

.cnt-us .info-card__icon svg {
width: 28px;
height: 28px
}

.cnt-us .info-card__label {
font-size: 16px;
letter-spacing: .14em;
color: #F9FFAE;
text-transform: uppercase;
margin-bottom: 8px;
line-height: 1.1
}

.cnt-us .info-card__val {
font-size: 18px;
line-height: 1.6;
color: #fff;
word-break: break-all
}

.cnt-us .info-card__val a {
color: #F9FFAE;
text-decoration: none;
border-bottom: 1px solid #f9ffae4d;
transition: border-color .35s ease-in-out
}

.cnt-us .info-card__val a:hover {
border-color: #F9FFAE
}

.cnt-us .info-card__accent {
position: absolute;
top: -24px;
right: -24px;
width: 80px;
height: 80px;
border-radius: 32px;
background: #c34cf62e;
pointer-events: none
}

.cnt-us .sidebar-band {
width: 6px;
border-radius: 6px;
background: linear-gradient(180deg, #C34CF6 0%, #F9FFAE 60%, #14454F 100%);
align-self: stretch;
min-height: 200px;
flex-shrink: 0
}

.cnt-us .sidebar-inner {
display: flex;
flex-direction: row;
gap: 16px;
align-items: stretch
}

.cnt-us .contact-body__form-area {
flex: 1 1 0;
min-width: 0
}

.cnt-us .form-card {
background: #fff;
border-radius: 18px;
box-shadow: -1px 6px 28px 1px #c34cf61a;
padding: 48px;
position: relative;
overflow: hidden
}

.cnt-us .form-card__bg-glow {
position: absolute;
inset: 0;
background: radial-gradient(ellipse 70% 60% at 50% 30%, #c34cf60f 0%, #fff0 80%);
pointer-events: none;
border-radius: 18px;
animation: glow-breathe 5s ease-in-out infinite
}

@keyframes glow-breathe {

0%,
100% {
opacity: .5
}

50% {
opacity: 1
}
}

.cnt-us .form-card__heading {
font-size: 40px;
line-height: 1.1;
color: #14454F;
font-weight: 700;
margin: 0 0 8px;
letter-spacing: -.01em
}

.cnt-us .form-card__sub {
font-size: 18px;
line-height: 1.6;
color: #14454F;
margin: 0 0 32px;
opacity: .72
}

.cnt-us .form-card__pull {
float: right;
width: 42%;
margin: 0 0 16px 32px;
font-size: 22px;
line-height: 1.6;
color: #C34CF6;
font-weight: 600;
border-left: 3px solid #C34CF6;
padding-left: 16px
}

.cnt-us .form-row {
display: flex;
flex-direction: column;
gap: 4px;
margin-bottom: 16px
}

.cnt-us .form-lbl {
font-size: 16px;
line-height: 1.1;
color: #14454F;
font-weight: 600;
letter-spacing: .04em
}

.cnt-us .form-inp {
width: 100%;
padding: 16px;
border: 2px solid #14454f2e;
border-radius: 6px;
font-size: 18px;
line-height: 1.6;
color: #14454F;
background: #fff;
box-shadow: inset -1px 2px 4px 1px #14454f12;
transition: border-color .38s ease-in-out, box-shadow .38s ease-in-out;
outline: none;
box-sizing: border-box
}

.cnt-us .form-inp::placeholder {
color: #14454f61;
font-style: italic
}

.cnt-us .form-inp:focus {
border-color: #C34CF6;
box-shadow: inset -1px 2px 4px 1px #c34cf61a -1px 2px 4px 1px #c34cf612
}

.cnt-us .radio-group {
display: flex;
flex-direction: row;
flex-wrap: wrap;
gap: 8px;
margin-bottom: 16px
}

.cnt-us .radio-group__lbl {
font-size: 16px;
line-height: 1.1;
color: #14454F;
font-weight: 600;
letter-spacing: .04em;
margin-bottom: 8px;
display: block;
width: 100%
}

.cnt-us .radio-opt {
position: relative
}

.cnt-us .radio-opt input[type="radio"] {
position: absolute;
opacity: 0;
width: 0;
height: 0;
pointer-events: none
}

.cnt-us .radio-opt__face {
display: inline-block;
padding: 8px 16px;
border-radius: 6px;
border: 2px solid #14454f33;
font-size: 16px;
line-height: 1.6;
color: #14454F;
cursor: pointer;
background: #fff;
transition: background .35s ease-in-out, border-color .35s ease-in-out, color .35s ease-in-out;
user-select: none
}

.cnt-us .radio-opt input[type="radio"]:checked+.radio-opt__face {
background: #14454F;
border-color: #14454F;
color: #F9FFAE
}

.cnt-us .radio-opt__face:hover {
border-color: #C34CF6
}

.cnt-us .radio-opt input[type="radio"]:focus-visible+.radio-opt__face {
outline: 2px solid #C34CF6;
outline-offset: 2px
}

.cnt-us .privacy-row {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 8px;
margin-bottom: 16px;
margin-top: 8px
}

.cnt-us .privacy-row input[type="checkbox"] {
width: 20px;
height: 20px;
min-width: 20px;
margin-top: 2px;
accent-color: #C34CF6;
cursor: pointer;
border-radius: 6px
}

.cnt-us .privacy-row__text {
font-size: 16px;
line-height: 1.6;
color: #14454F
}

.cnt-us .privacy-row__text a {
color: #C34CF6;
text-decoration: underline;
text-underline-offset: 2px;
transition: color .35s ease-in-out
}

.cnt-us .privacy-row__text a:hover {
color: #14454F
}

.cnt-us .submit-btn {
display: inline-flex;
flex-direction: row;
align-items: center;
justify-content: center;
gap: 8px;
padding: 16px 48px;
background: #14454F;
color: #F9FFAE;
font-size: 18px;
line-height: 1.1;
font-weight: 600;
border: none;
border-radius: 6px;
cursor: pointer;
letter-spacing: .06em;
box-shadow: -1px 6px 28px 1px #14454f1a;
transition: background .38s ease-in-out, box-shadow .38s ease-in-out, transform .35s cubic-bezier(0.34, 1.2, 0.64, 1);
position: relative
}

.cnt-us .submit-btn:hover {
background: #C34CF6;
box-shadow: -1px 12px 44px 1px #c34cf61a;
transform: translateY(-2px)
}

.cnt-us .submit-btn:active {
transform: translateY(0);
box-shadow: inset -1px 2px 4px 1px #14454f1a
}

.cnt-us .submit-btn:focus-visible {
outline: 2px solid #C34CF6;
outline-offset: 3px
}

.cnt-us .submit-btn__spinner {
display: none;
width: 18px;
height: 18px;
border: 2px solid #f9ffae66;
border-top-color: #F9FFAE;
border-radius: 32px;
animation: spin .7s linear infinite
}

@keyframes spin {
to {
transform: rotate(360deg)
}
}

.cnt-us .submit-btn:focus .submit-btn__spinner {
display: block
}

.cnt-us .before-after {
margin-top: 48px;
border-radius: 18px;
overflow: hidden;
box-shadow: -1px 6px 28px 1px #c34cf612;
border: 1px solid #14454f1a
}

.cnt-us .before-after__row {
display: grid;
grid-template-columns: 1fr 1fr
}

.cnt-us .before-after__col {
padding: 32px
}

.cnt-us .before-after__col--before {
background: #14454f0d;
border-right: 1px solid #14454f1a
}

.cnt-us .before-after__col--after {
background: #c34cf60f
}

.cnt-us .before-after__tag {
font-size: 16px;
letter-spacing: .14em;
text-transform: uppercase;
font-weight: 700;
margin-bottom: 16px;
line-height: 1.1
}

.cnt-us .before-after__tag--before {
color: #14454f80
}

.cnt-us .before-after__tag--after {
color: #C34CF6
}

.cnt-us .before-after__item {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 8px;
margin-bottom: 8px
}

.cnt-us .before-after__dot {
width: 8px;
height: 8px;
border-radius: 32px;
flex-shrink: 0;
margin-top: 8px
}

.cnt-us .before-after__dot--before {
background: #14454f4d
}

.cnt-us .before-after__dot--after {
background: #C34CF6
}

.cnt-us .before-after__text {
font-size: 16px;
line-height: 1.6;
color: #14454F
}

.cnt-us .shadow-pulse {
animation: shadow-rhythm 4s ease-in-out infinite
}

@keyframes shadow-rhythm {

0%,
100% {
box-shadow: -1px 2px 4px 1px #c34cf612
}

50% {
box-shadow: -1px 12px 44px 1px #c34cf61a
}
}

@media (max-width: 1024px) {
.cnt-us .contact-body {
flex-direction: column;
padding: 48px 32px;
gap: 32px
}

.cnt-us .contact-body__sidebar {
flex: none;
width: 100%;
position: static
}

.cnt-us .contact-body__sidebar-grid {
grid-template-columns: 1fr 1fr 1fr
}

.cnt-us .pg-title {
flex-direction: column;
padding: 48px 32px;
gap: 32px
}

.cnt-us .pg-title__text-zone {
flex: none;
padding: 0
}

.cnt-us .pg-title__img-zone {
flex: none;
min-height: 280px
}

.cnt-us .pg-title__h1 {
font-size: 40px
}

.cnt-us .pg-title__math {
right: 0;
font-size: 140px
}
}

@media (max-width: 768px) {
.cnt-us .contact-body__sidebar-grid {
grid-template-columns: 1fr
}

.cnt-us .form-card {
padding: 32px 16px
}

.cnt-us .before-after__row {
grid-template-columns: 1fr
}

.cnt-us .before-after__col--before {
border-right: none;
border-bottom: 1px solid #14454f1a
}

.cnt-us .form-card__pull {
float: none;
width: 100%;
margin: 0 0 16px
}

.cnt-us .pg-title {
padding: 48px 16px
}

.cnt-us .contact-body {
padding: 48px 16px
}

.cnt-us .pg-title__h1 {
font-size: 40px
}
}

@media (max-width: 480px) {
.cnt-us .pg-title__h1 {
font-size: 28px
}

.cnt-us .form-card__heading {
font-size: 28px
}

.cnt-us .radio-group {
flex-direction: column
}
}

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

.lrn-prog .prog-frame {
max-width: 1366px;
margin: 0 auto;
padding: 0 32px
}

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

60% {
opacity: 1;
transform: translateY(8px)
}

80% {
transform: translateY(-4px)
}

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

.lrn-prog .anim-drop {
animation: dropBounce .45s cubic-bezier(0.34, 1.2, 0.64, 1) both
}

.lrn-prog .anim-drop--delay1 {
animation-delay: .08s
}

.lrn-prog .anim-drop--delay2 {
animation-delay: .16s
}

.lrn-prog .anim-drop--delay3 {
animation-delay: .24s
}

.lrn-prog .title-band {
padding: 96px 0 48px;
background: #fff
}

.lrn-prog .title-band__inner {
display: flex;
flex-direction: row;
align-items: center;
gap: 48px
}

.lrn-prog .title-band__text-col {
flex: 1 1 0;
position: relative;
padding: 32px
}

.lrn-prog .title-band__dot-grid {
position: absolute;
inset: 0;
pointer-events: none;
background-image: radial-gradient(circle, #c34cf62e 1.5px, transparent 1.5px);
background-size: 20px 20px;
border-radius: 18px
}

.lrn-prog .title-band__label {
display: inline-block;
font-size: 16px;
font-weight: 700;
letter-spacing: .12em;
color: #fff;
background: #14454F;
border-radius: 6px;
padding: 4px 16px;
margin-bottom: 16px;
position: relative
}

.lrn-prog .title-band__h1 {
font-size: 72px;
line-height: 1.1;
font-weight: 800;
color: #14454F;
margin: 0 0 16px;
position: relative
}

.lrn-prog .title-band__h1 .grad-txt {
background: linear-gradient(120deg, #C34CF6 30%, #14454F 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text
}

.lrn-prog .title-band__sub {
font-size: 22px;
font-weight: 300;
letter-spacing: .06em;
color: #14454F;
margin: 0 0 32px;
line-height: 1.6;
position: relative
}

.lrn-prog .title-band__desc {
font-size: 18px;
line-height: 1.6;
color: #2a3d40;
position: relative;
max-width: 480px
}

.lrn-prog .title-band__img-col {
flex: 0 0 420px;
position: relative
}

.lrn-prog .title-band__img-frame {
border-radius: 32px;
overflow: hidden;
border: 4px solid #F9FFAE;
box-shadow: -1px 12px 44px 1px #c34cf61a;
position: relative
}

.lrn-prog .title-band__img-frame img {
width: 100%;
height: 360px;
object-fit: cover;
object-position: center;
display: block;
filter: saturate(1.08) brightness(1.03)
}

.lrn-prog .title-band__img-deco {
position: absolute;
bottom: -16px;
right: -16px;
width: 80px;
height: 80px;
border-radius: 18px;
background: #F9FFAE;
z-index: -1
}

.lrn-prog .title-band__brace {
position: absolute;
top: 16px;
left: -24px;
font-size: 72px;
line-height: 1;
color: #c34cf62e;
font-weight: 100;
pointer-events: none;
user-select: none
}

.lrn-prog .title-band__brace--right {
left: auto;
right: -24px;
top: auto;
bottom: 16px
}

.lrn-prog .prog-detail {
padding: 48px 0 96px;
background: linear-gradient(160deg, #f9ffae61 0%, #c34cf612 60%, #14454f0f 100%)
}

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

.lrn-prog .prog-detail__main-card {
background: #14454F;
border-radius: 32px;
padding: 48px 32px;
color: #fff;
box-shadow: -1px 6px 28px 1px #14454f1a;
display: flex;
flex-direction: column;
gap: 32px
}

.lrn-prog .prog-detail__main-card h2 {
font-size: 40px;
font-weight: 800;
line-height: 1.1;
margin: 0;
color: #F9FFAE;
letter-spacing: -.01em
}

.lrn-prog .prog-detail__main-card p {
font-size: 18px;
line-height: 1.6;
color: #f9ffaed9;
margin: 0
}

.lrn-prog .prog-detail__pull {
font-size: 22px;
font-weight: 700;
color: #F9FFAE;
border-left: 4px solid #C34CF6;
padding-left: 16px;
line-height: 1.6
}

.lrn-prog .prog-detail__modules {
display: flex;
flex-direction: column;
gap: 8px;
margin-top: 8px
}

.lrn-prog .prog-detail__mod-item {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 16px;
background: #f9ffae1a;
border-radius: 18px;
padding: 16px
}

.lrn-prog .prog-detail__mod-icon {
flex: 0 0 32px;
height: 32px;
border-radius: 6px;
background: #C34CF6;
display: flex;
align-items: center;
justify-content: center
}

.lrn-prog .prog-detail__mod-icon svg {
width: 18px;
height: 18px;
fill: #fff
}

.lrn-prog .prog-detail__mod-text {
font-size: 16px;
line-height: 1.6;
color: #fff
}

.lrn-prog .prog-detail__side-card {
border-radius: 18px;
padding: 32px 16px;
background: #fff;
box-shadow: -1px 2px 4px 1px #c34cf612;
display: flex;
flex-direction: column;
align-items: center;
gap: 8px;
text-align: center;
transition: box-shadow .38s cubic-bezier(0.34, 1.2, 0.64, 1), transform .38s cubic-bezier(0.34, 1.2, 0.64, 1)
}

.lrn-prog .prog-detail__side-card:hover {
box-shadow: -1px 12px 44px 1px #c34cf61a;
transform: translateY(-4px)
}

.lrn-prog .prog-detail__side-card .sc-num {
font-size: 40px;
font-weight: 800;
line-height: 1.1;
color: #C34CF6
}

.lrn-prog .prog-detail__side-card .sc-label {
font-size: 16px;
line-height: 1.6;
color: #14454F;
font-weight: 600
}

.lrn-prog .prog-detail__side-card .sc-desc {
font-size: 16px;
line-height: 1.6;
color: #4a6068
}

.lrn-prog .prog-detail__side-card .sc-ico {
width: 40px;
height: 40px;
border-radius: 18px;
background: #c34cf61a;
display: flex;
align-items: center;
justify-content: center;
margin-bottom: 4px
}

.lrn-prog .prog-detail__side-card .sc-ico svg {
width: 22px;
height: 22px
}

.lrn-prog .prog-detail__portraits-row {
display: flex;
flex-direction: row;
gap: 32px;
margin-top: 32px;
align-items: flex-start
}

.lrn-prog .prog-detail__portrait-item {
display: flex;
flex-direction: column;
gap: 8px;
flex: 1 1 0
}

.lrn-prog .prog-detail__portrait-img-wrap {
border-radius: 18px;
overflow: hidden;
box-shadow: -1px 6px 28px 1px #14454f1a;
aspect-ratio: 7/9
}

.lrn-prog .prog-detail__portrait-img-wrap img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: top;
display: block;
transition: transform .42s cubic-bezier(0.34, 1.2, 0.64, 1)
}

.lrn-prog .prog-detail__portrait-img-wrap:hover img {
transform: scale(1.04)
}

.lrn-prog .prog-detail__portrait-name {
font-size: 16px;
font-weight: 700;
color: #14454F;
margin: 4px 0 0
}

.lrn-prog .prog-detail__portrait-role {
font-size: 16px;
color: #4a6068;
line-height: 1.6
}

.lrn-prog .prog-detail__portrait-quote {
font-size: 16px;
font-style: italic;
color: #2a3d40;
line-height: 1.6;
border-left: 3px solid #F9FFAE;
padding-left: 8px;
border-radius: 0
}

.lrn-prog .prog-detail__third-portrait {
margin-top: 32px;
display: flex;
flex-direction: row;
gap: 32px;
align-items: flex-start;
background: #fff;
border-radius: 32px;
padding: 32px;
box-shadow: -1px 6px 28px 1px #c34cf61a
}

.lrn-prog .prog-detail__third-portrait .tp-img {
flex: 0 0 160px;
border-radius: 18px;
overflow: hidden;
aspect-ratio: 7/9;
box-shadow: -1px 2px 4px 1px #14454f12
}

.lrn-prog .prog-detail__third-portrait .tp-img img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: top;
display: block
}

.lrn-prog .prog-detail__third-portrait .tp-body {
flex: 1 1 0;
display: flex;
flex-direction: column;
gap: 8px
}

.lrn-prog .prog-detail__third-portrait .tp-name {
font-size: 18px;
font-weight: 700;
color: #14454F
}

.lrn-prog .prog-detail__third-portrait .tp-role {
font-size: 16px;
color: #4a6068
}

.lrn-prog .prog-detail__third-portrait .tp-txt {
font-size: 16px;
line-height: 1.6;
color: #2a3d40
}

.lrn-prog .prog-detail__img-feature {
margin-top: 32px;
border-radius: 32px;
overflow: hidden;
position: relative;
box-shadow: -1px 12px 44px 1px #14454f1a
}

.lrn-prog .prog-detail__img-feature img {
width: 100%;
height: 320px;
object-fit: cover;
object-position: center;
display: block;
filter: saturate(1.05) brightness(1.02)
}

.lrn-prog .prog-detail__img-overlay {
position: absolute;
inset: 0;
background: #14454f61;
display: flex;
align-items: flex-end;
padding: 32px
}

.lrn-prog .prog-detail__img-caption {
font-size: 22px;
font-weight: 700;
color: #F9FFAE;
line-height: 1.6;
max-width: 560px
}

.lrn-prog .prog-detail__highlight-inline {
background: #F9FFAE;
border-radius: 6px;
padding: 0 8px;
color: #14454F
}

.lrn-prog .prog-detail__faq {
margin-top: 48px
}

.lrn-prog .prog-detail__faq h3 {
font-size: 28px;
font-weight: 800;
color: #14454F;
margin: 0 0 32px;
line-height: 1.1
}

.lrn-prog .faq-list {
display: flex;
flex-direction: column;
gap: 8px
}

.lrn-prog .faq-item {
border-radius: 18px;
background: #fff;
box-shadow: -1px 2px 4px 1px #c34cf612;
overflow: hidden
}

.lrn-prog .faq-item__toggle {
width: 100%;
background: none;
border: none;
padding: 16px 32px;
text-align: left;
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
cursor: pointer;
gap: 16px;
transition: background .35s ease-in-out
}

.lrn-prog .faq-item__toggle:hover {
background: #c34cf60d
}

.lrn-prog .faq-item__toggle:focus {
outline: 2px solid #C34CF6;
outline-offset: -2px
}

.lrn-prog .faq-item__q {
font-size: 18px;
font-weight: 600;
color: #14454F;
line-height: 1.6
}

.lrn-prog .faq-item__arrow {
flex: 0 0 28px;
height: 28px;
border-radius: 6px;
background: #c34cf61a;
display: flex;
align-items: center;
justify-content: center;
transition: transform .38s cubic-bezier(0.34, 1.2, 0.64, 1), background .35s ease-in-out
}

.lrn-prog .faq-item__arrow svg {
width: 14px;
height: 14px;
stroke: #C34CF6;
fill: none;
transition: transform .38s cubic-bezier(0.34, 1.2, 0.64, 1)
}

.lrn-prog .faq-item__body {
display: none;
padding: 0 32px 16px;
font-size: 16px;
line-height: 1.6;
color: #2a3d40
}

.lrn-prog .faq-item--open .faq-item__body {
display: block
}

.lrn-prog .faq-item--open .faq-item__arrow {
background: #c34cf62e;
transform: rotate(180deg)
}

@media (max-width: 1024px) {
.lrn-prog .prog-detail__grid {
grid-template-columns: 1fr 1fr
}

.lrn-prog .prog-detail__main-card {
grid-column: 1 / -1
}

.lrn-prog .title-band__h1 {
font-size: 40px
}

.lrn-prog .title-band__img-col {
flex: 0 0 300px
}
}

@media (max-width: 768px) {
.lrn-prog .title-band__inner {
flex-direction: column
}

.lrn-prog .title-band__img-col {
flex: 0 0 auto;
width: 100%
}

.lrn-prog .prog-detail__grid {
grid-template-columns: 1fr
}

.lrn-prog .prog-detail__portraits-row {
flex-direction: column
}

.lrn-prog .title-band__h1 {
font-size: 40px
}

.lrn-prog .title-band__brace,
.lrn-prog .title-band__brace--right {
display: none
}
}

@media (max-width: 480px) {
.lrn-prog .title-band {
padding: 48px 0 32px
}

.lrn-prog .prog-frame {
padding: 0 16px
}

.lrn-prog .title-band__h1 {
font-size: 28px
}

.lrn-prog .prog-detail__third-portrait {
flex-direction: column
}

.lrn-prog .prog-detail__third-portrait .tp-img {
flex: 0 0 auto;
width: 100%
}
}

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

.abt-us .abt-us__schema {
display: none
}

.abt-us .pg-row {
max-width: 1366px;
margin-left: auto;
margin-right: auto;
padding-left: 32px;
padding-right: 32px
}

.abt-us .title-blk {
padding-top: 96px;
padding-bottom: 48px;
position: relative;
background: #fff
}

.abt-us .title-blk__atmo {
position: absolute;
inset: 0;
overflow: hidden;
pointer-events: none;
z-index: 0
}

.abt-us .title-blk__spot--a {
position: absolute;
top: -48px;
left: -48px;
width: 320px;
height: 320px;
background: #C34CF6;
opacity: .08;
border-radius: 32px;
filter: blur(60px)
}

.abt-us .title-blk__spot--b {
position: absolute;
bottom: -32px;
right: -32px;
width: 260px;
height: 260px;
background: #14454F;
opacity: .07;
border-radius: 32px;
filter: blur(50px)
}

.abt-us .title-blk__spot--c {
position: absolute;
top: 40%;
left: 50%;
transform: translateX(-50%);
width: 400px;
height: 200px;
background: #F9FFAE;
opacity: .18;
border-radius: 32px;
filter: blur(40px)
}

.abt-us .title-blk__inner {
position: relative;
z-index: 1;
display: flex;
flex-direction: row;
align-items: flex-end;
gap: 32px
}

.abt-us .title-blk__img-col {
flex: 0 0 auto;
width: 220px
}

.abt-us .title-blk__img-col--right {
flex: 0 0 auto;
width: 200px
}

.abt-us .title-blk__img-frame {
width: 220px;
height: 300px;
border-radius: 18px;
overflow: hidden;
position: relative
}

.abt-us .title-blk__img-frame::after {
content: "";
position: absolute;
top: 0;
left: 0;
width: 60%;
height: 60%;
background: linear-gradient(135deg, #f9ffae8c 0%, transparent 70%);
pointer-events: none;
border-radius: 18px 0 0 0
}

.abt-us .title-blk__img-frame img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
opacity: .82;
transition: opacity .38s ease-in-out
}

.abt-us .title-blk__img-frame--right {
width: 200px;
height: 260px;
border-radius: 18px;
overflow: hidden;
position: relative
}

.abt-us .title-blk__img-frame--right::after {
content: "";
position: absolute;
bottom: 0;
right: 0;
width: 55%;
height: 55%;
background: linear-gradient(315deg, #c34cf62e 0%, transparent 70%);
pointer-events: none
}

.abt-us .title-blk__img-frame--right img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
opacity: .78
}

.abt-us .title-blk__txt-col {
flex: 1 1 0;
display: flex;
flex-direction: column;
gap: 16px;
padding-bottom: 16px
}

.abt-us .title-blk__label {
font-size: 16px;
line-height: 1.1;
letter-spacing: .18em;
color: #14454F;
text-transform: uppercase;
font-weight: 600;
opacity: .7
}

.abt-us .title-blk__h1 {
font-size: 72px;
line-height: 1.1;
font-weight: 800;
letter-spacing: -.02em;
margin: 0;
background: linear-gradient(112deg, #C34CF6 0%, #14454F 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
animation: clr-shift .95s cubic-bezier(0.34, 1.2, 0.64, 1) both
}

@keyframes clr-shift {
from {
background: linear-gradient(112deg, #F9FFAE 0%, #C34CF6 100%);
-webkit-background-clip: text;
background-clip: text;
opacity: .4
}

to {
background: linear-gradient(112deg, #C34CF6 0%, #14454F 100%);
-webkit-background-clip: text;
background-clip: text;
opacity: 1
}
}

.abt-us .title-blk__desc {
font-size: 18px;
line-height: 1.6;
color: #14454F;
max-width: 480px;
margin: 0
}

.abt-us .title-blk__corner-deco {
position: absolute;
z-index: 2;
pointer-events: none
}

.abt-us .title-blk__corner-deco--tl {
top: 16px;
left: 16px
}

.abt-us .title-blk__corner-deco--br {
bottom: 16px;
right: 16px
}

.abt-us .corner-line {
width: 40px;
height: 40px;
display: block
}

.abt-us .divider-a {
display: flex;
flex-direction: row;
align-items: center;
justify-content: center;
gap: 8px;
padding: 16px 0;
max-width: 1366px;
margin: 0 auto
}

.abt-us .divider-a__dot {
width: 6px;
height: 6px;
border-radius: 32px;
background: #C34CF6;
flex-shrink: 0
}

.abt-us .divider-a__line {
flex: 1 1 0;
height: 1px;
background: linear-gradient(90deg, #C34CF6 0%, #14454F 100%);
max-width: 200px;
opacity: .3
}

.abt-us .detail-blk {
background: #f4f8f7;
padding-top: 48px;
padding-bottom: 96px;
position: relative
}

.abt-us .detail-blk__texture {
position: absolute;
inset: 0;
overflow: hidden;
pointer-events: none;
z-index: 0
}

.abt-us .detail-blk__texture-img {
position: absolute;
inset: 0;
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
opacity: .04;
filter: grayscale(1)
}

.abt-us .detail-blk__inner {
position: relative;
z-index: 1
}

.abt-us .detail-blk__top {
display: flex;
flex-direction: row;
gap: 48px;
align-items: flex-start;
margin-bottom: 48px
}

.abt-us .detail-blk__narrative {
flex: 1 1 0;
display: flex;
flex-direction: column;
gap: 16px
}

.abt-us .detail-blk__h2 {
font-size: 40px;
line-height: 1.1;
font-weight: 700;
letter-spacing: .01em;
color: #14454F;
margin: 0
}

.abt-us .detail-blk__pull {
float: right;
width: 220px;
margin-left: 32px;
margin-bottom: 8px;
font-size: 22px;
line-height: 1.6;
font-weight: 700;
color: #C34CF6;
border-left: 4px solid #F9FFAE;
border-top: 1px solid #C34CF620;
padding-left: 16px;
padding-top: 8px
}

.abt-us .detail-blk__body {
font-size: 18px;
line-height: 1.6;
color: #14454F;
margin: 0
}

.abt-us .detail-blk__metrics {
flex: 0 0 auto;
width: 260px;
display: flex;
flex-direction: column;
gap: 16px
}

.abt-us .metric-card {
background: #fff;
border-radius: 18px;
padding: 16px;
box-shadow: -1px 6px 28px 1px #c34cf61a;
display: flex;
flex-direction: column;
gap: 4px;
transition: box-shadow .38s cubic-bezier(0.34, 1.2, 0.64, 1)
}

.abt-us .metric-card:hover {
box-shadow: -1px 12px 44px 1px #c34cf61a
}

.abt-us .metric-card__num {
font-size: 40px;
line-height: 1.1;
font-weight: 800;
background: linear-gradient(112deg, #C34CF6 0%, #14454F 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
letter-spacing: -.02em
}

.abt-us .metric-card__label {
font-size: 16px;
line-height: 1.6;
color: #14454F;
opacity: .65
}

.abt-us .detail-blk__grid {
display: grid;
grid-template-columns: 1fr 1fr 1fr;
gap: 16px;
margin-bottom: 48px
}

.abt-us .feat-item {
background: #fff;
border-radius: 18px;
padding: 32px 16px 16px;
box-shadow: -1px 2px 4px 1px #14454f12;
display: flex;
flex-direction: column;
gap: 8px;
transition: box-shadow .42s ease-in-out, transform .42s ease-in-out
}

.abt-us .feat-item:hover {
box-shadow: -1px 12px 44px 1px #14454f1a;
transform: translateY(-4px)
}

.abt-us .feat-item__icon {
width: 36px;
height: 36px;
flex-shrink: 0;
margin-bottom: 4px
}

.abt-us .feat-item__h4 {
font-size: 18px;
line-height: 1.1;
font-weight: 700;
color: #14454F;
margin: 0;
letter-spacing: .01em
}

.abt-us .feat-item__p {
font-size: 16px;
line-height: 1.6;
color: #14454F;
opacity: .72;
margin: 0
}

.abt-us .detail-blk__table-row {
display: flex;
flex-direction: row;
gap: 32px;
align-items: flex-start
}

.abt-us .detail-blk__tbl-wrap {
flex: 1 1 0;
overflow: hidden;
border-radius: 18px;
box-shadow: -1px 6px 28px 1px #14454f1a;
background: #fff
}

.abt-us .sem-table {
width: 100%;
border-collapse: collapse
}

.abt-us .sem-table thead tr {
background: linear-gradient(90deg, #14454F 0%, #1a5a68 100%)
}

.abt-us .sem-table thead th {
font-size: 16px;
line-height: 1.1;
letter-spacing: .08em;
color: #F9FFAE;
text-transform: uppercase;
padding: 16px;
text-align: left;
font-weight: 600
}

.abt-us .sem-table tbody tr {
border-bottom: 1px solid #14454F12;
transition: background .35s ease-in-out
}

.abt-us .sem-table tbody tr:last-child {
border-bottom: none
}

.abt-us .sem-table tbody tr:hover {
background: #F9FFAE40 !important
}

.abt-us .sem-table tbody tr:nth-child(even) {
background: #f4f8f7
}

.abt-us .sem-table td {
font-size: 16px;
line-height: 1.6;
color: #14454F;
padding: 16px;
vertical-align: top
}

.abt-us .sem-table td:first-child {
font-weight: 600;
color: #C34CF6
}

.abt-us .detail-blk__tbl-narrative {
flex: 0 0 auto;
width: 280px;
display: flex;
flex-direction: column;
gap: 16px
}

.abt-us .detail-blk__tbl-h3 {
font-size: 28px;
line-height: 1.1;
font-weight: 700;
color: #14454F;
margin: 0;
letter-spacing: .01em
}

.abt-us .detail-blk__tbl-p {
font-size: 16px;
line-height: 1.6;
color: #14454F;
opacity: .75;
margin: 0
}

.abt-us .team-strip {
display: flex;
flex-direction: row;
align-items: center;
gap: 16px;
background: linear-gradient(112deg, #14454F 0%, #1a5a68 100%);
border-radius: 18px;
padding: 16px 32px;
margin-top: 48px;
box-shadow: -1px 6px 28px 1px #14454f1a
}

.abt-us .team-strip__portrait {
width: 80px;
height: 120px;
border-radius: 18px;
overflow: hidden;
flex-shrink: 0;
box-shadow: -1px 2px 4px 1px #c34cf612
}

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

.abt-us .team-strip__txt {
flex: 1 1 0;
display: flex;
flex-direction: column;
gap: 8px
}

.abt-us .team-strip__name {
font-size: 22px;
line-height: 1.1;
font-weight: 700;
color: #F9FFAE;
margin: 0
}

.abt-us .team-strip__role {
font-size: 16px;
line-height: 1.1;
color: #F9FFAE;
opacity: .65;
letter-spacing: .1em;
text-transform: uppercase
}

.abt-us .team-strip__quote {
font-size: 18px;
line-height: 1.6;
color: #fff;
opacity: .88;
margin: 0;
max-width: 520px
}

.abt-us .team-strip__img-accent {
flex: 0 0 auto;
width: 140px;
height: 100px;
border-radius: 18px;
overflow: hidden;
opacity: .55
}

.abt-us .team-strip__img-accent img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block
}

@media (max-width: 1024px) {
.abt-us .title-blk__h1 {
font-size: 40px
}

.abt-us .title-blk__img-col {
width: 160px
}

.abt-us .title-blk__img-frame {
width: 160px;
height: 220px
}

.abt-us .title-blk__img-col--right {
width: 140px
}

.abt-us .title-blk__img-frame--right {
width: 140px;
height: 190px
}

.abt-us .detail-blk__top {
flex-direction: column;
gap: 32px
}

.abt-us .detail-blk__metrics {
width: 100%;
flex-direction: row;
flex-wrap: wrap
}

.abt-us .metric-card {
flex: 1 1 140px
}

.abt-us .detail-blk__grid {
grid-template-columns: 1fr 1fr
}

.abt-us .detail-blk__table-row {
flex-direction: column;
gap: 16px
}

.abt-us .detail-blk__tbl-narrative {
width: 100%
}

.abt-us .team-strip__img-accent {
display: none
}
}

@media (max-width: 768px) {
.abt-us .pg-row {
padding-left: 16px;
padding-right: 16px
}

.abt-us .title-blk {
padding-top: 48px;
padding-bottom: 32px
}

.abt-us .title-blk__inner {
flex-direction: column;
align-items: center;
gap: 16px
}

.abt-us .title-blk__img-col,
.abt-us .title-blk__img-col--right {
width: 100%;
max-width: 200px
}

.abt-us .title-blk__img-frame {
width: 100%;
height: 180px
}

.abt-us .title-blk__img-frame--right {
width: 100%;
height: 160px
}

.abt-us .title-blk__h1 {
font-size: 40px
}

.abt-us .detail-blk__h2 {
font-size: 28px
}

.abt-us .detail-blk__grid {
grid-template-columns: 1fr
}

.abt-us .team-strip {
flex-direction: column;
padding: 16px;
gap: 16px
}

.abt-us .detail-blk__pull {
float: none;
width: 100%;
margin-left: 0;
margin-bottom: 16px
}
}

@media (max-width: 480px) {
.abt-us .title-blk__h1 {
font-size: 28px
}

.abt-us .detail-blk__metrics {
flex-direction: column
}

.abt-us .metric-card {
flex: unset
}
}

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

.rt__inner {
max-width: 1366px;
margin: 0 auto;
padding: 0 32px
}

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

.rt__grad-text {
background: linear-gradient(135deg, #C34CF6, #14454F);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text
}

.title-blk {
background: #14454F;
padding: 96px 0 48px;
position: relative
}

.title-blk__dots {
position: absolute;
inset: 0;
overflow: hidden;
pointer-events: none
}

.title-blk__dot {
position: absolute;
border-radius: 50%;
background: #F9FFAE;
opacity: .08
}

.title-blk__dot--a {
width: 6px;
height: 6px;
top: 12%;
left: 8%
}

.title-blk__dot--b {
width: 4px;
height: 4px;
top: 28%;
left: 22%
}

.title-blk__dot--c {
width: 8px;
height: 8px;
top: 55%;
left: 5%
}

.title-blk__dot--d {
width: 5px;
height: 5px;
top: 70%;
left: 35%
}

.title-blk__dot--e {
width: 4px;
height: 4px;
top: 18%;
left: 65%
}

.title-blk__dot--f {
width: 7px;
height: 7px;
top: 42%;
left: 80%
}

.title-blk__dot--g {
width: 5px;
height: 5px;
top: 80%;
left: 90%
}

.title-blk__dot--h {
width: 6px;
height: 6px;
top: 10%;
left: 92%
}

.title-blk__grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 48px;
align-items: center
}

@media (max-width: 768px) {
.title-blk__grid {
grid-template-columns: 1fr;
gap: 32px
}
}

.title-blk__num {
font-size: 72px;
line-height: 1.1;
font-weight: 800;
color: #C34CF6;
letter-spacing: -2px;
display: block
}

.title-blk__h1 {
font-size: 40px;
line-height: 1.1;
font-weight: 700;
color: #F9FFAE;
margin: 8px 0 16px;
letter-spacing: -.5px
}

.title-blk__desc {
font-size: 18px;
line-height: 1.6;
color: #f9ffaeb8;
max-width: 480px
}

.title-blk__img-wrap {
position: relative;
border-radius: 18px;
overflow: hidden;
height: 340px
}

.title-blk__img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block
}

.title-blk__img-overlay {
position: absolute;
inset: 0;
background: linear-gradient(to bottom, #14454f8c, #14454f14)
}

@media (max-width: 768px) {
.title-blk__img-wrap {
height: 220px
}

.title-blk__h1 {
font-size: 28px
}

.title-blk__num {
font-size: 40px
}
}

.scale-blk {
padding: 96px 0;
background: #fff
}

.scale-blk__top {
display: grid;
grid-template-columns: 1.2fr 0.8fr;
gap: 48px;
align-items: start;
margin-bottom: 48px
}

@media (max-width: 768px) {
.scale-blk__top {
grid-template-columns: 1fr;
gap: 32px
}
}

.scale-blk__h2 {
font-size: 40px;
line-height: 1.1;
font-weight: 700;
color: #14454F;
letter-spacing: -.5px
}

.scale-blk__body {
font-size: 18px;
line-height: 1.6;
color: #2a5a66
}

.scale-blk__pull {
font-size: 22px;
line-height: 1.6;
font-weight: 600;
color: #C34CF6;
border-left: 4px solid #F9FFAE;
border-bottom: 1px solid #c34cf62e;
padding: 16px 16px 16px 24px;
border-radius: 0 6px 6px 0;
background: #f9ffae2e
}

.scale-blk__metrics {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 16px
}

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

@media (max-width: 480px) {
.scale-blk__metrics {
grid-template-columns: 1fr 1fr
}
}

.metric-card {
border: 1px solid #c34cf624;
border-radius: 18px;
padding: 32px 16px;
text-align: center;
box-shadow: -1px 2px 4px 1px #c34cf612;
transition: box-shadow .38s cubic-bezier(0.34, 1.2, 0.64, 1), border-color .38s ease-in-out
}

.metric-card:hover {
box-shadow: -1px 6px 28px 1px #c34cf61a;
border-color: #c34cf652
}

.metric-card__val {
font-size: 40px;
line-height: 1.1;
font-weight: 800;
display: block;
background: linear-gradient(135deg, #C34CF6, #14454F);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text
}

.metric-card__label {
font-size: 16px;
line-height: 1.6;
color: #14454F;
margin-top: 8px;
display: block
}

.comm-blk {
padding: 96px 0;
background: #f9ffae21
}

.comm-blk__layout {
display: grid;
grid-template-columns: 0.9fr 1.1fr;
gap: 48px;
align-items: start
}

@media (max-width: 768px) {
.comm-blk__layout {
grid-template-columns: 1fr;
gap: 32px
}
}

.comm-blk__img-col {
display: flex;
flex-direction: column;
gap: 16px
}

.comm-blk__img-main {
border-radius: 18px;
overflow: hidden;
height: 260px
}

.comm-blk__img-main img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block
}

.comm-blk__img-pair {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 16px
}

.comm-blk__img-sm {
border-radius: 18px;
overflow: hidden;
height: 150px
}

.comm-blk__img-sm img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block
}

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

.comm-blk__h2 {
font-size: 40px;
line-height: 1.1;
font-weight: 700;
color: #14454F;
letter-spacing: -.5px
}

.comm-blk__body {
font-size: 18px;
line-height: 1.6;
color: #2a5a66
}

.comm-blk__peers {
display: flex;
flex-direction: column;
gap: 16px;
margin-top: 8px
}

.peer-item {
display: grid;
grid-template-columns: auto 1fr;
gap: 16px;
align-items: center;
padding: 16px;
border-radius: 18px;
border: 1px solid #14454f1a;
background: #fff;
box-shadow: -1px 2px 4px 1px #14454f12
}

.peer-item__portrait {
width: 56px;
height: 70px;
border-radius: 6px;
overflow: hidden;
flex-shrink: 0
}

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

.peer-item__name {
font-size: 16px;
font-weight: 700;
color: #14454F;
display: block
}

.peer-item__role {
font-size: 16px;
line-height: 1.6;
color: #5a8a94;
display: block;
margin-top: 4px
}

.approach-blk {
padding: 96px 0;
background: #14454F
}

.approach-blk__h2 {
font-size: 40px;
line-height: 1.1;
font-weight: 300;
color: #F9FFAE;
letter-spacing: .04em;
margin-bottom: 48px;
text-align: center
}

.approach-blk__timeline {
position: relative;
display: flex;
flex-direction: row;
gap: 0;
margin-bottom: 48px;
overflow: hidden
}

.approach-blk__timeline::before {
content: '';
position: absolute;
top: 20px;
left: 0;
right: 0;
height: 2px;
background: linear-gradient(90deg, #C34CF6, #F9FFAE, #C34CF6);
z-index: 0
}

.tl-step {
flex: 1;
display: flex;
flex-direction: column;
align-items: center;
position: relative;
z-index: 1
}

.tl-step__dot {
width: 40px;
height: 40px;
border-radius: 50%;
background: #14454F;
border: 3px solid #C34CF6;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
transition: background .42s cubic-bezier(0.34, 1.2, 0.64, 1), border-color .42s ease-in-out
}

.tl-step:hover .tl-step__dot {
background: #C34CF6
}

.tl-step__num {
font-size: 16px;
font-weight: 700;
color: #F9FFAE
}

.tl-step__card {
margin-top: 16px;
padding: 16px;
border-radius: 18px;
background: #f9ffae12;
border: 1px solid #c34cf638;
text-align: center;
width: 90%;
box-shadow: -1px 6px 28px 1px #c34cf61a;
transition: background .38s ease-in-out
}

.tl-step:hover .tl-step__card {
background: #f9ffae1f
}

.tl-step__card-h {
font-size: 16px;
font-weight: 700;
color: #F9FFAE;
display: block;
margin-bottom: 8px
}

.tl-step__card-p {
font-size: 16px;
line-height: 1.6;
color: #f9ffaeb8
}

@media (max-width: 768px) {
.approach-blk__timeline {
flex-direction: column;
gap: 16px
}

.approach-blk__timeline::before {
top: 0;
bottom: 0;
left: 20px;
right: auto;
width: 2px;
height: auto
}

.tl-step {
flex-direction: row;
align-items: flex-start;
gap: 16px
}

.tl-step__card {
width: 100%;
text-align: left;
margin-top: 0
}
}

.approach-blk__img-row {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 16px
}

@media (max-width: 480px) {
.approach-blk__img-row {
grid-template-columns: 1fr
}
}

.approach-blk__img-wrap {
border-radius: 18px;
overflow: hidden;
height: 200px
}

.approach-blk__img-wrap img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block
}

.hesit-blk {
padding: 96px 0;
background: #fff
}

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

@media (max-width: 768px) {
.hesit-blk__layout {
grid-template-columns: 1fr;
gap: 32px
}
}

.hesit-blk__h2 {
font-size: 40px;
line-height: 1.1;
font-weight: 700;
color: #14454F;
letter-spacing: -.5px;
margin-bottom: 16px
}

.hesit-blk__body {
font-size: 18px;
line-height: 1.6;
color: #2a5a66;
margin-bottom: 16px
}

.hesit-blk__pull {
font-size: 22px;
line-height: 1.6;
font-weight: 600;
color: #14454F;
border-left: 4px solid #C34CF6;
padding: 16px 16px 16px 24px;
border-radius: 0 6px 6px 0;
background: #c34cf60d;
margin-top: 8px
}

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

.hesit-item {
display: grid;
grid-template-columns: 40px 1fr;
gap: 16px;
align-items: start;
padding: 16px;
border-radius: 18px;
border: 1px solid #c34cf61f;
box-shadow: -1px 2px 4px 1px #c34cf612;
transition: box-shadow .35s cubic-bezier(0.34, 1.2, 0.64, 1)
}

.hesit-item:hover {
box-shadow: -1px 12px 44px 1px #c34cf61a
}

.hesit-item__icon {
width: 40px;
height: 40px;
border-radius: 6px;
background: linear-gradient(135deg, #c34cf626, #14454f1a);
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0
}

.hesit-item__icon svg {
width: 20px;
height: 20px
}

.hesit-item__h {
font-size: 16px;
font-weight: 700;
color: #14454F;
display: block;
margin-bottom: 4px
}

.hesit-item__p {
font-size: 16px;
line-height: 1.6;
color: #5a8a94
}

@keyframes slideInLeft {
from {
opacity: 0;
transform: translateX(-40px)
}

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

@keyframes slideInRight {
from {
opacity: 0;
transform: translateX(40px)
}

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

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

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

.rt .anim-left {
animation: slideInLeft .45s cubic-bezier(0.34, 1.2, 0.64, 1) both
}

.rt .anim-right {
animation: slideInRight .45s cubic-bezier(0.34, 1.2, 0.64, 1) both
}

.rt .anim-up {
animation: fadeUp .42s ease-in-out both
}

.rt .anim-delay-1 {
animation-delay: .08s
}

.rt .anim-delay-2 {
animation-delay: .16s
}

.rt .anim-delay-3 {
animation-delay: .24s
}

.rt .anim-delay-4 {
animation-delay: .32s
}

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

.srv__inner {
max-width: 1366px;
margin: 0 auto;
padding: 0 32px
}

.srv__schema {
display: none
}

.srv__lead {
background-color: #fff;
padding: 96px 0 48px;
position: relative
}

.srv__lead-bg {
position: absolute;
inset: 0;
overflow: hidden;
pointer-events: none
}

.srv__lead-stripes {
position: absolute;
inset: 0;
background-image: repeating-linear-gradient(-28deg, transparent, transparent 18px, #c34cf60a 18px, #c34cf60a 20px)
}

.srv__lead-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 48px;
align-items: center;
position: relative
}

.srv__lead-text {
padding: 48px 0
}

.srv__lead-label {
display: inline-block;
font-size: 16px;
letter-spacing: .12em;
color: #14454F;
background: #F9FFAE;
padding: 4px 16px;
border-radius: 6px;
margin-bottom: 16px;
font-weight: 600;
border: 1px solid #14454f26
}

.srv__lead-h1 {
font-size: 72px;
line-height: 1.1;
color: #14454F;
font-weight: 800;
margin: 0 0 32px
}

.srv__lead-h1 span {
background: linear-gradient(135deg, #C34CF6 0%, #14454F 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text
}

.srv__lead-desc {
font-size: 18px;
line-height: 1.6;
color: #14454F;
max-width: 480px;
margin: 0
}

.srv__lead-img-col {
position: relative
}

.srv__lead-img-frame {
width: 100%;
aspect-ratio: 4/5;
overflow: hidden;
border-radius: 18px;
position: relative
}

.srv__lead-img-frame img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
filter: saturate(1.15) brightness(0.92)
}

.srv__lead-img-overlay {
position: absolute;
inset: 0;
background: linear-gradient(160deg, #c34cf62e 0%, #14454f38 100%);
border-radius: 18px
}

.srv__lead-corner {
position: absolute;
bottom: -16px;
left: -16px;
width: 80px;
height: 80px;
border-radius: 18px;
background: #F9FFAE;
display: flex;
align-items: center;
justify-content: center;
box-shadow: -1px 6px 28px 1px #c34cf61a
}

.srv__lead-corner-num {
font-size: 28px;
font-weight: 800;
color: #14454F;
line-height: 1.1
}

.srv__lead-corner-lbl {
font-size: 16px;
color: #14454F;
font-weight: 500;
line-height: 1.1
}

.srv__catalog {
background: #14454F;
padding: 96px 0;
position: relative
}

.srv__catalog-head {
margin-bottom: 48px
}

.srv__catalog-h2 {
font-size: 40px;
line-height: 1.1;
color: #F9FFAE;
font-weight: 700;
margin: 0 0 16px;
letter-spacing: .02em
}

.srv__catalog-sub {
font-size: 18px;
line-height: 1.6;
color: #f9ffaeb3;
max-width: 520px;
margin: 0
}

.srv__catalog-list {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 16px
}

.srv__item {
background: #ffffff0d;
border: 1px solid #f9ffae1f;
border-radius: 18px;
padding: 32px;
position: relative;
transition: background .38s cubic-bezier(0.34, 1.2, 0.64, 1), border-color .38s cubic-bezier(0.34, 1.2, 0.64, 1)
}

.srv__item:hover {
background: #c34cf61f;
border-color: #c34cf666
}

.srv__item-num {
font-size: 40px;
font-weight: 800;
color: #f9ffae2e;
line-height: 1.1;
margin-bottom: 16px;
letter-spacing: -.02em
}

.srv__item-icon {
width: 40px;
height: 40px;
margin-bottom: 16px
}

.srv__item-h4 {
font-size: 18px;
line-height: 1.1;
color: #F9FFAE;
font-weight: 700;
margin: 0 0 8px
}

.srv__item-p {
font-size: 16px;
line-height: 1.6;
color: #f9ffaea6;
margin: 0
}

.srv__item-tag {
display: inline-block;
margin-top: 16px;
font-size: 16px;
letter-spacing: .08em;
color: #C34CF6;
font-weight: 600;
background: #c34cf61a;
padding: 4px 8px;
border-radius: 6px
}

.srv__depth {
padding: 0;
position: relative;
min-height: 520px;
display: flex;
align-items: stretch
}

.srv__depth-img-wrap {
position: absolute;
inset: 0;
overflow: hidden
}

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

.srv__depth-overlay {
position: absolute;
inset: 0;
background: linear-gradient(100deg, #14454feb 0%, #14454fb3 55%, #c34cf673 100%)
}

.srv__depth-body {
position: relative;
max-width: 1366px;
margin: 0 auto;
padding: 96px 32px;
width: 100%;
display: grid;
grid-template-columns: 3fr 2fr;
gap: 96px;
align-items: center
}

.srv__depth-h2 {
font-size: 40px;
line-height: 1.1;
color: #fff;
font-weight: 300;
letter-spacing: .04em;
margin: 0 0 32px
}

.srv__depth-h2 strong {
font-weight: 800;
color: #F9FFAE
}

.srv__depth-p {
font-size: 18px;
line-height: 1.6;
color: #fffc;
margin: 0 0 16px
}

.srv__depth-pull {
font-size: 28px;
line-height: 1.1;
color: #F9FFAE;
font-weight: 700;
border-left: 4px solid #C34CF6;
padding-left: 16px;
border-radius: 0 6px 6px 0
}

.srv__experts {
background: #fff;
padding: 96px 0
}

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

.srv__experts-h2 {
font-size: 40px;
line-height: 1.1;
color: #14454F;
font-weight: 700;
margin: 0 0 16px
}

.srv__experts-desc {
font-size: 18px;
line-height: 1.6;
color: #14454F;
margin: 0 0 32px
}

.srv__experts-cta {
display: inline-block;
padding: 16px 32px;
background: #C34CF6;
color: #fff;
font-size: 18px;
font-weight: 700;
border-radius: 18px;
text-decoration: none;
transition: background .35s cubic-bezier(0.34, 1.2, 0.64, 1), box-shadow .35s ease-in-out;
box-shadow: -1px 6px 28px 1px #c34cf61a
}

.srv__experts-cta:hover {
background: #a832e0;
box-shadow: -1px 12px 44px 1px #c34cf61a;
color: #fff;
text-decoration: none
}

.srv__experts-right {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 32px
}

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

.srv__profile-img-wrap {
width: 100%;
aspect-ratio: 5/7;
overflow: hidden;
border-radius: 0;
box-shadow: -1px 12px 44px 1px #14454f1a
}

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

.srv__profile-name {
font-size: 18px;
font-weight: 700;
color: #14454F;
margin: 0;
line-height: 1.1
}

.srv__profile-role {
font-size: 16px;
color: #C34CF6;
margin: 0;
font-weight: 500;
line-height: 1.6
}

.srv__profile-quote {
font-size: 16px;
line-height: 1.6;
color: #14454F;
margin: 0;
border-top: 2px solid #F9FFAE;
padding-top: 8px
}

.srv__divider-a {
height: 4px;
background: linear-gradient(90deg, #C34CF6 0%, #F9FFAE 60%, transparent 100%)
}

.srv__divider-b {
height: 32px;
background: linear-gradient(180deg, #14454F 0%, transparent 100%)
}

@keyframes srv-item-in {
from {
opacity: 0;
transform: translateY(24px)
}

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

.srv__item {
animation: srv-item-in .42s cubic-bezier(0.34, 1.2, 0.64, 1) both
}

.srv__item:nth-child(1) {
animation-delay: .05s
}

.srv__item:nth-child(2) {
animation-delay: .13s
}

.srv__item:nth-child(3) {
animation-delay: .21s
}

.srv__item:nth-child(4) {
animation-delay: .29s
}

@media (max-width: 1024px) {
.srv__lead-h1 {
font-size: 40px
}

.srv__catalog-list {
grid-template-columns: 1fr 1fr
}

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

.srv__experts-grid {
grid-template-columns: 1fr
}

.srv__experts-right {
grid-template-columns: 1fr 1fr
}
}

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

.srv__lead-h1 {
font-size: 40px
}

.srv__catalog-list {
grid-template-columns: 1fr
}

.srv__experts-right {
grid-template-columns: 1fr
}

.srv__depth-body {
padding: 48px 32px
}

.srv__lead {
padding: 48px 0 32px
}

.srv__catalog {
padding: 48px 0
}

.srv__experts {
padding: 48px 0
}
}

@media (max-width: 480px) {
.srv__inner {
padding: 0 16px
}

.srv__lead-h1 {
font-size: 28px
}

.srv__depth-h2 {
font-size: 28px
}

.srv__experts-h2 {
font-size: 28px
}

.srv__catalog-h2 {
font-size: 28px
}

.srv__depth-body {
padding: 32px 16px
}
}

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

.success-pg .confirm-card {
max-width: 560px;
width: 100%;
background: #f4fff0;
border: 1.5px solid #C34CF6;
border-radius: 32px;
padding: 48px;
text-align: center;
box-shadow: -1px 6px 28px 1px #c34cf61a
}

.success-pg .confirm-card__icon {
width: 64px;
height: 64px;
margin: 0 auto 32px;
display: flex;
align-items: center;
justify-content: center
}

.success-pg .confirm-card__icon svg {
width: 64px;
height: 64px
}

.success-pg .confirm-card__heading {
font-size: 28px;
line-height: 1.1;
color: #14454F;
font-weight: 700;
margin: 0 0 16px;
letter-spacing: -.01em
}

.success-pg .confirm-card__body {
font-size: 18px;
line-height: 1.6;
color: #14454F;
margin: 0 0 32px
}

.success-pg .confirm-card__link {
display: inline-block;
font-size: 16px;
font-weight: 600;
color: #fff;
background: #C34CF6;
border-radius: 18px;
padding: 16px 32px;
text-decoration: none;
transition: background .38s cubic-bezier(0.34, 1.2, 0.64, 1), box-shadow .42s ease-in-out;
box-shadow: -1px 2px 4px 1px #c34cf612
}

.success-pg .confirm-card__link:hover,
.success-pg .confirm-card__link:focus {
background: #14454F;
box-shadow: -1px 6px 28px 1px #c34cf61a;
outline: none
}

.success-pg .confirm-card__link:active {
background: #0e333b
}

@media (max-width: 480px) {
.success-pg .confirm-card {
padding: 32px 16px
}

.success-pg .confirm-card__heading {
font-size: 22px
}

.success-pg .confirm-card__body {
font-size: 16px
}
}