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

body {
    margin: 0;
    padding: 0;
    min-height: 100svh;
    overflow-x: hidden;
    -webkit-text-size-adjust: 100%
}

html {
    scroll-behavior: auto
}

:focus-visible {
    outline: 3px solid;
    outline-color: #000D84;
    outline-offset: 3px;
    outline-image: linear-gradient(135deg, #FAF917, #000D84)
}

.pg-body {
    font-family: 'Lato', sans-serif;
    font-size: 15px;
    line-height: 1.65;
    color: #0a1340;
    background-color: #fff
}

.hd-root {
    position: relative;
    background-color: #000D84;
    overflow: hidden
}

.hd-root::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, #000D84 0%, #001299 55%, #000a6e 100%);
    pointer-events: none
}

.hd-root::after {
    content: '';
    position: absolute;
    top: -28px;
    right: -28px;
    width: 220px;
    height: 220px;
    border-radius: 50%;
    background: #faf91712;
    pointer-events: none
}

.hd-accent-shape {
    position: absolute;
    bottom: -16px;
    left: 200px;
    width: 120px;
    height: 120px;
    border-radius: 50%;
    background: #e0f5ff0d;
    pointer-events: none
}

.hd-bar {
    position: relative;
    z-index: 2;
    max-width: 1024px;
    margin: 0 auto;
    padding: 28px 28px 0;
    display: flex;
    align-items: center;
    gap: 28px
}

.hd-brand {
    margin-left: 8px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    text-decoration: none
}

.hd-brand__img-wrap {
    width: 72px;
    height: 72px;
    padding: 8px;
    border-radius: 22px;
    background-color: #FAF917;
    box-shadow: -1px 5px 14px -1px #faf91717 -1px 9px 36px -1px #faf91721;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0
}

.hd-brand__img-wrap img {
    width: 56px;
    height: 56px;
    object-fit: contain;
    display: block
}

.hd-tagline {
    margin-left: 16px;
    display: flex;
    flex-direction: column;
    gap: 4px
}

.hd-tagline__name {
    font-size: 21px;
    font-weight: 700;
    line-height: 1.15;
    color: #FAF917;
    letter-spacing: 0
}

.hd-tagline__sub {
    font-size: 13px;
    line-height: 1.4;
    color: #e0f5ffbf;
    font-weight: 400
}

.hd-nav-row {
    position: relative;
    z-index: 2;
    max-width: 1024px;
    margin: 0 auto;
    padding: 16px 28px 28px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    flex-wrap: wrap
}

.hd-nav__pill {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    border-radius: 2px;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.4;
    color: #E0F5FF;
    text-decoration: none;
    border: 2px solid transparent;
    transition: color .28s cubic-bezier(0.4, 0, 0.2, 1), background-color .28s cubic-bezier(0.4, 0, 0.2, 1), border-color .28s cubic-bezier(0.4, 0, 0.2, 1);
    min-height: 44px;
    white-space: nowrap
}

.hd-nav__pill:hover {
    color: #000D84;
    background-color: #FAF917;
    border-color: #FAF917
}

.hd-nav__pill--active {
    color: #000D84;
    background-color: #FAF917;
    border-color: #FAF917
}

.hd-nav__pill .mi {
    font-size: 17px
}

.hd-divider {
    position: relative;
    z-index: 2;
    height: 4px;
    background: linear-gradient(90deg, #FAF917 0%, #faf9174d 60%, transparent 100%)
}

.ft-root {
    background-color: #000D84;
    border-top: 4px solid #FAF917
}

.ft-inner {
    max-width: 1024px;
    margin: 0 auto;
    padding: 28px 28px 16px;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 28px;
    flex-wrap: wrap
}

.ft-brand {
    display: flex;
    flex-direction: column;
    gap: 16px;
    flex: 0 0 auto
}

.ft-brand__img-wrap {
    width: 68px;
    height: 68px;
    padding: 8px;
    border-radius: 22px;
    background-color: #FAF917;
    box-shadow: -1px 5px 14px -1px #faf91717;
    display: flex;
    align-items: center;
    justify-content: center
}

.ft-brand__img-wrap img {
    width: 52px;
    height: 52px;
    object-fit: contain;
    display: block
}

.ft-brand__hours {
    font-size: 13px;
    line-height: 1.65;
    color: #e0f5ffa6
}

.ft-brand__hours strong {
    display: block;
    color: #E0F5FF;
    font-weight: 700;
    font-size: 13px
}

.ft-right {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 16px;
    flex: 1 1 auto
}

.ft-legal-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-end;
    list-style: none;
    margin: 0;
    padding: 0
}

.ft-legal-nav__item a {
    font-size: 13px;
    line-height: 1.4;
    color: #e0f5ffa6;
    text-decoration: none;
    padding: 4px 8px;
    border-radius: 2px;
    transition: color .35s ease-in-out, background-color .35s ease-in-out;
    display: inline-block;
    min-height: 44px;
    display: inline-flex;
    align-items: center
}

.ft-legal-nav__item a:hover {
    color: #FAF917;
    background-color: #faf91714
}

.ft-contact-row {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 4px
}

.ft-contact-row__item {
    font-size: 13px;
    line-height: 1.4;
    color: #e0f5ff8c;
    text-decoration: none;
    transition: color .28s ease-in-out
}

.ft-contact-row__item:hover {
    color: #E0F5FF
}

.ft-bottom {
    max-width: 1024px;
    margin: 0 auto;
    padding: 16px 28px;
    border-top: 1px solid #e0f5ff1a;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 8px
}

.ft-copy {
    font-size: 13px;
    line-height: 1.4;
    color: #e0f5ff66
}

.ft-addr {
    font-size: 13px;
    line-height: 1.4;
    color: #e0f5ff59;
    text-align: right
}

.ck-bar {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1000;
    background-color: #E0F5FF;
    border-bottom: 3px solid #000D84;
    box-shadow: -1px 5px 14px -1px #000d8417;
    opacity: 0;
    transition: opacity .38s cubic-bezier(0.4, 0, 0.2, 1)
}

.ck-bar--visible {
    opacity: 1
}

.ck-bar__inner {
    max-width: 1024px;
    margin: 0 auto;
    padding: 16px 28px;
    display: flex;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap
}

.ck-bar__icon {
    flex-shrink: 0;
    width: 36px;
    height: 36px;
    border-radius: 2px;
    background-color: #000D84;
    display: flex;
    align-items: center;
    justify-content: center
}

.ck-bar__icon svg {
    width: 20px;
    height: 20px
}

.ck-bar__text {
    flex: 1 1 260px;
    font-size: 13px;
    line-height: 1.65;
    color: #0a1340
}

.ck-bar__btns {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0
}

.ck-bar__accept {
    display: inline-flex;
    align-items: center;
    padding: 8px 16px;
    border-radius: 2px;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.4;
    color: #000D84;
    background-color: #FAF917;
    border: 2px solid #FAF917;
    cursor: pointer;
    min-height: 44px;
    font-family: 'Lato', sans-serif;
    transition: background-color .28s cubic-bezier(0.4, 0, 0.2, 1), color .28s cubic-bezier(0.4, 0, 0.2, 1)
}

.ck-bar__accept:hover {
    background-color: #e8e200;
    border-color: #e8e200
}

.ck-bar__decline {
    display: inline-flex;
    align-items: center;
    padding: 8px 16px;
    border-radius: 2px;
    font-size: 13px;
    font-weight: 400;
    line-height: 1.4;
    color: #000D84;
    background-color: transparent;
    border: 2px solid #000D84;
    cursor: pointer;
    min-height: 44px;
    font-family: 'Lato', sans-serif;
    text-decoration: none;
    transition: background-color .35s ease-in-out, color .35s ease-in-out
}

.ck-bar__decline:hover {
    background-color: #000d8414
}

@media (max-width: 900px) {
    .hd-bar {
        padding: 16px 16px 0;
        gap: 16px
    }

    .hd-nav-row {
        padding: 8px 16px 16px;
        justify-content: flex-start
    }

    .ft-inner {
        padding: 28px 16px 16px;
        flex-direction: column;
        align-items: flex-start
    }

    .ft-right {
        align-items: flex-start;
        width: 100%
    }

    .ft-legal-nav {
        justify-content: flex-start
    }

    .ft-contact-row {
        align-items: flex-start
    }

    .ft-bottom {
        padding: 16px;
        flex-direction: column;
        align-items: flex-start
    }

    .ft-addr {
        text-align: left
    }
}

@media (max-width: 600px) {
    .hd-tagline__name {
        font-size: 17px
    }

    .hd-tagline__sub {
        display: none
    }

    .hd-nav__pill {
        font-size: 13px;
        padding: 8px
    }

    .ck-bar__inner {
        padding: 16px
    }
}

.policy-main {
    max-width: 1024px;
    margin: 0 auto;
    padding: 56px 28px;
    color: #0a1240
}

.policy-main p {
    font-size: 15px;
    line-height: 1.85;
    margin-top: 0;
    margin-bottom: 16px
}

.policy-main ul,
.policy-main ol {
    padding-left: 28px;
    margin-bottom: 16px;
    margin-top: 0
}

.policy-main ul {
    list-style-type: disc
}

.policy-main ol {
    list-style-type: decimal
}

.policy-main li {
    font-size: 15px;
    line-height: 1.65;
    margin-bottom: 8px;
    padding-left: 4px
}

.policy-main li:last-child {
    margin-bottom: 0
}

.policy-main ul ul,
.policy-main ol ol,
.policy-main ul ol,
.policy-main ol ul {
    margin-top: 8px;
    margin-bottom: 8px
}

.policy-main strong,
.policy-main b {
    font-weight: 700;
    color: #000D84
}

.policy-main a {
    color: #000D84;
    text-decoration: underline;
    text-underline-offset: 3px;
    text-decoration-thickness: 1px;
    transition: color .28s ease-in-out, text-decoration-color .28s ease-in-out
}

.policy-main a:hover {
    color: #0018c8;
    text-decoration-color: #FAF917
}

.policy-main a:focus-visible {
    outline: 2px solid #000D84;
    outline-offset: 2px;
    border-radius: 2px
}

.policy-main table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 28px;
    font-size: 15px;
    line-height: 1.65;
    box-shadow: -1px 5px 14px -1px #000d8417;
    border-radius: 22px;
    overflow: hidden
}

.policy-main thead {
    background-color: #000D84;
    color: #fff
}

.policy-main thead th {
    font-size: 13px;
    font-weight: 700;
    line-height: 1.4;
    text-align: left;
    padding: 16px;
    letter-spacing: 0;
    border-bottom: none
}

.policy-main tbody tr {
    background-color: #fff;
    transition: background-color .25s cubic-bezier(0.4, 0, 0.2, 1)
}

.policy-main tbody tr:nth-child(even) {
    background-color: #E0F5FF
}

.policy-main tbody tr:hover {
    background-color: #faf9172e
}

.policy-main td,
.policy-main th {
    padding: 16px;
    text-align: left;
    vertical-align: top
}

.policy-main td {
    font-size: 15px;
    line-height: 1.65;
    color: #0a1240;
    border-bottom: 1px solid #000d8414
}

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

.policy-main hr {
    border: none;
    border-top: 2px solid #000d841f;
    margin-top: 28px;
    margin-bottom: 28px;
    border-radius: 2px
}

.policy-main div {
    margin-bottom: 16px
}

.policy-main div:last-child {
    margin-bottom: 0
}

@media (max-width: 900px) {
    .policy-main {
        padding: 28px 16px
    }

    .policy-main table {
        display: block;
        overflow-x: auto;
        border-radius: 22px
    }

    .policy-main thead th,
    .policy-main td {
        padding: 16px 8px;
        min-width: 120px
    }
}

@media (max-width: 600px) {
    .policy-main {
        padding: 28px 8px
    }

    .policy-main p,
    .policy-main li,
    .policy-main td {
        font-size: 13px;
        line-height: 1.65
    }

    .policy-main thead th {
        font-size: 13px;
        padding: 8px
    }

    .policy-main td {
        padding: 8px
    }

    .policy-main ul,
    .policy-main ol {
        padding-left: 16px
    }
}

.ctus {
    background: #fff;
    overflow-x: clip;
    padding: 0
}

.ctus__schema {
    display: none
}

.ctus__band--top {
    width: 100%;
    height: 8px;
    background: linear-gradient(307deg, #FAF917 0%, #000D84 60%, #E0F5FF 100%)
}

.ctus__band--mid {
    width: 100%;
    height: 4px;
    background: linear-gradient(307deg, #E0F5FF 0%, #FAF917 50%, #000D84 100%);
    opacity: .55
}

.ctus__title-blk {
    position: relative;
    padding: 56px 28px;
    background: linear-gradient(307deg, #000d8412 0%, #e0f5ff8c 40%, #faf91721 100%), radial-gradient(ellipse at 20% 80%, #000d8417 0%, transparent 65%);
    overflow: hidden
}

.ctus__title-blk::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: repeating-linear-gradient(-55deg, #000d840a 0px, #000d840a 1px, transparent 1px, transparent 22px);
    pointer-events: none
}

.ctus__title-blk::after {
    content: "BL";
    position: absolute;
    right: -16px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 160px;
    font-weight: 900;
    color: #000d840a;
    line-height: 1.15;
    pointer-events: none;
    user-select: none;
    letter-spacing: -8px
}

.ctus__title-inner {
    max-width: 1024px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 28px;
    position: relative
}

.ctus__img-wrap {
    position: absolute;
    right: 0;
    top: 0;
    width: 340px;
    height: 100%;
    border-radius: 22px 2px 2px 22px;
    overflow: hidden
}

.ctus__img-wrap::after {
    content: "";
    position: absolute;
    inset: 0;
    background: #000d842e;
    border-radius: 22px 2px 2px 22px
}

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

.ctus__title-text {
    max-width: 580px
}

.ctus__label {
    display: inline-block;
    font-size: 13px;
    line-height: 1.4;
    color: #000D84;
    background: #faf91773;
    border-radius: 2px;
    padding: 4px 8px;
    font-weight: 600;
    letter-spacing: .04em
}

.ctus__h1 {
    font-size: 50px;
    line-height: 1.15;
    color: #000D84;
    font-weight: 900;
    text-shadow: -1px 2px 3px #000d8417 -1px 5px 14px #000d8412;
    margin: 8px 0 0
}

.ctus__subtitle {
    font-size: 17px;
    line-height: 1.65;
    color: #1a2060;
    margin: 16px 0 0;
    max-width: 480px
}

.ctus__problem {
    display: flex;
    flex-direction: row;
    gap: 16px;
    align-items: flex-start;
    padding: 16px;
    background: #ffffffb8;
    border-radius: 2px 22px 22px 2px;
    border-left: 4px solid #FAF917;
    border-top: 1px solid #000d841a;
    border-bottom: 1px solid #000d841a;
    box-shadow: -1px 5px 14px -1px #000d8417
}

.ctus__problem-ico {
    flex-shrink: 0;
    width: 36px;
    height: 36px;
    background: #000D84;
    border-radius: 2px;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center
}

.ctus__problem-ico svg {
    display: block
}

.ctus__problem-body {
    display: flex;
    flex-direction: column;
    gap: 4px
}

.ctus__problem-ttl {
    font-size: 15px;
    line-height: 1.4;
    font-weight: 700;
    color: #000D84
}

.ctus__problem-desc {
    font-size: 13px;
    line-height: 1.65;
    color: #2b3470
}

.ctus__contact-blk {
    padding: 56px 28px;
    background: #fff;
    position: relative
}

.ctus__contact-inner {
    max-width: 1024px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1.4fr;
    gap: 56px;
    align-items: start
}

.ctus__info-col {
    display: flex;
    flex-direction: column;
    gap: 28px
}

.ctus__info-h2 {
    font-size: 38px;
    line-height: 1.15;
    color: #000D84;
    font-weight: 800;
    text-shadow: -1px 2px 3px #000d8412
}

.ctus__info-desc {
    font-size: 15px;
    line-height: 1.65;
    color: #2b3470
}

.ctus__detail-list {
    display: flex;
    flex-direction: column;
    gap: 16px;
    list-style: none;
    margin: 0;
    padding: 0;
    counter-reset: det-counter
}

.ctus__detail-list li {
    counter-increment: det-counter;
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 16px;
    padding: 16px;
    background: linear-gradient(307deg, #e0f5ff8c 0%, #faf91714 100%);
    border-radius: 22px 2px 22px 2px;
    box-shadow: -1px 2px 3px -1px #000d840d -1px 5px 14px -1px #000d8417;
    transition: box-shadow .35s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative
}

.ctus__detail-list li::before {
    content: counter(det-counter, decimal-leading-zero);
    font-size: 13px;
    font-weight: 700;
    color: #FAF917;
    background: #000D84;
    border-radius: 2px;
    min-width: 28px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0
}

.ctus__detail-list li:hover {
    box-shadow: -1px 9px 36px -1px #000d8421
}

.ctus__det-lbl {
    font-size: 13px;
    line-height: 1.4;
    font-weight: 700;
    color: #000D84;
    display: block
}

.ctus__det-val {
    font-size: 15px;
    line-height: 1.65;
    color: #1a2060;
    display: block;
    word-break: break-word
}

.ctus__det-val a {
    color: #000D84;
    text-decoration: underline;
    text-decoration-color: #000d844d;
    transition: text-decoration-color .28s ease-in-out, color .28s ease-in-out
}

.ctus__det-val a:hover {
    color: #FAF917;
    text-decoration-color: #FAF917
}

.ctus__bar-wrap {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 16px;
    background: #e0f5ffb3;
    border-radius: 2px 22px 2px 22px;
    border-top: 2px solid #000D84
}

.ctus__bar-labels {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    font-size: 13px;
    line-height: 1.4;
    color: #000D84;
    font-weight: 600
}

.ctus__bar-track {
    width: 100%;
    height: 10px;
    background: #000d841a;
    border-radius: 2px;
    overflow: hidden;
    position: relative
}

.ctus__bar-fill {
    height: 100%;
    width: 62%;
    background: linear-gradient(307deg, #000D84 0%, #FAF917 100%);
    border-radius: 2px;
    box-shadow: -1px 2px 3px -1px #000d8421;
    animation: barPulse 2.2s ease-in-out infinite
}

@keyframes barPulse {

    0%,
    100% {
        box-shadow: -1px 2px 3px -1px #000d8421
    }

    50% {
        box-shadow: -1px 5px 14px -1px #000d8447
    }
}

.ctus__bar-note {
    font-size: 13px;
    line-height: 1.4;
    color: #2b3470;
    text-align: center
}

.ctus__form-col {
    display: flex;
    flex-direction: column;
    gap: 28px
}

.ctus__form-h3 {
    font-size: 21px;
    line-height: 1.4;
    color: #000D84;
    font-weight: 700;
    text-shadow: -1px 2px 3px #000d8412
}

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

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

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

.ctus__lbl {
    font-size: 13px;
    line-height: 1.4;
    font-weight: 600;
    color: #000D84
}

.ctus__inp {
    font-size: 15px;
    line-height: 1.65;
    color: #1a2060;
    background: #e0f5ff73;
    border: 1.5px solid #000d842e;
    border-radius: 2px 22px 2px 22px;
    padding: 8px 16px;
    width: 100%;
    box-sizing: border-box;
    transition: border-color .28s ease-in-out, box-shadow .35s cubic-bezier(0.4, 0, 0.2, 1);
    outline: none;
    text-overflow: ellipsis
}

.ctus__inp::placeholder {
    color: #000d8461;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap
}

.ctus__inp:focus {
    border-color: #000D84;
    box-shadow: -1px 5px 14px -1px #000d8421;
    background: #e0f5ffbf
}

.ctus__inp:invalid:not(:placeholder-shown) {
    border-color: #c0392b
}

.ctus__textarea {
    resize: vertical;
    min-height: 100px;
    border-radius: 2px 22px 2px 22px
}

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

.ctus__check {
    width: 18px;
    height: 18px;
    accent-color: #000D84;
    flex-shrink: 0;
    margin-top: 2px;
    cursor: pointer
}

.ctus__privacy-txt {
    font-size: 13px;
    line-height: 1.65;
    color: #2b3470
}

.ctus__privacy-txt a {
    color: #000D84;
    text-decoration: underline;
    text-decoration-color: #000d8459;
    transition: text-decoration-color .28s ease-in-out
}

.ctus__privacy-txt a:hover {
    text-decoration-color: #000D84
}

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

.ctus__btn {
    font-size: 15px;
    line-height: 1.4;
    font-weight: 700;
    color: #000D84;
    background: #FAF917;
    border: none;
    border-radius: 2px 22px 2px 22px;
    padding: 16px 28px;
    cursor: pointer;
    box-shadow: -1px 5px 14px -1px #000d8421;
    transition: background .28s ease-in-out, color .28s ease-in-out, box-shadow .35s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 8px;
    animation: shadowPulse 2.6s ease-in-out infinite
}

@keyframes shadowPulse {

    0%,
    100% {
        box-shadow: -1px 5px 14px -1px #000d8421
    }

    50% {
        box-shadow: -1px 9px 36px -1px #000d8438
    }
}

.ctus__btn:hover {
    background: #000D84;
    color: #FAF917;
    box-shadow: -1px 9px 36px -1px #000d842e
}

.ctus__btn:focus {
    outline: 3px solid #000D84;
    outline-offset: 3px
}

.ctus__btn:active {
    box-shadow: inset -1px 6px 10px -1px #000d842e
}

.ctus__btn-spinner {
    display: none;
    width: 16px;
    height: 16px;
    border: 2px solid #000d8440;
    border-top-color: #000D84;
    border-radius: 50%;
    animation: spin .7s linear infinite
}

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

.ctus__btn-txt {
    display: inline
}

.ctus__form:valid .ctus__btn .ctus__btn-txt {
    display: inline
}

.ctus__hint {
    font-size: 13px;
    line-height: 1.4;
    color: #000d848c
}

.ctus__divider {
    width: 100%;
    height: 40px;
    background: linear-gradient(180deg, #fff 0%, #e0f5ff99 50%, #faf9171f 100%);
    filter: blur(0px);
    position: relative;
    overflow: hidden
}

.ctus__divider::before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 12px;
    height: 16px;
    background: #000d840a;
    filter: blur(8px)
}

.ctus__response-blk {
    padding: 56px 28px;
    background: linear-gradient(307deg, #000d840f 0%, #e0f5ff80 50%, #faf9171a 100%), radial-gradient(ellipse at 80% 20%, #faf9171f 0%, transparent 60%);
    position: relative;
    overflow: hidden
}

.ctus__response-blk::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: repeating-linear-gradient(-55deg, #000d8408 0px, #000d8408 1px, transparent 1px, transparent 22px);
    pointer-events: none
}

.ctus__response-inner {
    max-width: 1024px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 28px;
    position: relative
}

.ctus__response-h2 {
    font-size: 38px;
    line-height: 1.15;
    color: #000D84;
    font-weight: 800;
    text-align: center;
    text-shadow: -1px 2px 3px #000d8417 -1px 5px 14px #000d840f
}

.ctus__response-sub {
    font-size: 15px;
    line-height: 1.65;
    color: #2b3470;
    text-align: center;
    max-width: 640px;
    margin: 0 auto
}

.ctus__steps-list {
    display: flex;
    flex-direction: column;
    gap: 0;
    list-style: none;
    margin: 0;
    padding: 0;
    counter-reset: step-counter;
    max-width: 680px;
    margin: 0 auto;
    width: 100%
}

.ctus__steps-list li {
    counter-increment: step-counter;
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 16px;
    padding: 16px 0;
    position: relative
}

.ctus__steps-list li::after {
    content: "";
    position: absolute;
    left: 14px;
    top: 48px;
    bottom: 0;
    width: 2px;
    background: linear-gradient(180deg, #000D84 0%, #000d8414 100%)
}

.ctus__steps-list li:last-child::after {
    display: none
}

.ctus__step-num {
    flex-shrink: 0;
    width: 28px;
    height: 28px;
    background: #000D84;
    border-radius: 2px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 13px;
    font-weight: 700;
    color: #FAF917;
    z-index: 1
}

.ctus__step-body {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding-bottom: 16px
}

.ctus__step-ttl {
    font-size: 17px;
    line-height: 1.4;
    font-weight: 700;
    color: #000D84
}

.ctus__step-txt {
    font-size: 15px;
    line-height: 1.65;
    color: #2b3470
}

.ctus__type-demo {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 8px;
    padding: 16px;
    background: #fffc;
    border-radius: 22px 2px 22px 2px;
    box-shadow: -1px 5px 14px -1px #000d8417;
    max-width: 480px;
    margin: 0 auto
}

.ctus__type-cursor {
    display: inline-block;
    width: 2px;
    height: 1.2em;
    background: #000D84;
    vertical-align: middle;
    animation: blink 1.1s step-end infinite;
    margin-left: 2px
}

@keyframes blink {

    0%,
    100% {
        opacity: 1
    }

    50% {
        opacity: 0
    }
}

.ctus__type-txt {
    font-size: 15px;
    line-height: 1.4;
    color: #000D84;
    font-weight: 600;
    overflow: hidden;
    white-space: nowrap;
    animation: typeIn 3.2s steps(38, end) infinite;
    max-width: 340px
}

@keyframes typeIn {
    0% {
        width: 0
    }

    70% {
        width: 340px
    }

    90% {
        width: 340px
    }

    100% {
        width: 0
    }
}

.ctus__type-ico {
    flex-shrink: 0;
    color: #000D84;
    font-size: 21px
}

@media (max-width: 900px) {
    .ctus__title-blk {
        padding: 56px 16px
    }

    .ctus__img-wrap {
        display: none
    }

    .ctus__contact-inner {
        grid-template-columns: 1fr;
        gap: 28px
    }

    .ctus__contact-blk {
        padding: 56px 16px
    }

    .ctus__response-blk {
        padding: 56px 16px
    }

    .ctus__h1 {
        font-size: 38px
    }
}

@media (max-width: 600px) {
    .ctus__h1 {
        font-size: 38px
    }

    .ctus__info-h2 {
        font-size: 21px
    }

    .ctus__response-h2 {
        font-size: 21px
    }

    .ctus__field-row {
        grid-template-columns: 1fr
    }

    .ctus__title-blk {
        padding: 28px 16px
    }

    .ctus__contact-blk {
        padding: 28px 16px
    }

    .ctus__response-blk {
        padding: 28px 16px
    }

    .ctus__type-txt {
        max-width: 200px
    }

    @keyframes typeIn {
        0% {
            width: 0
        }

        70% {
            width: 200px
        }

        90% {
            width: 200px
        }

        100% {
            width: 0
        }
    }
}

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

.bse .pg-wrap {
    max-width: 1024px;
    margin: 0 auto;
    padding: 0 28px
}

.bse .divider-grad {
    height: 2px;
    background: linear-gradient(90deg, #FAF917 0%, #000D84 60%, #E0F5FF 100%);
    border: none;
    margin: 0
}

.bse .divider-soft {
    height: 2px;
    background: linear-gradient(90deg, #000D84 0%, #E0F5FF 70%, transparent 100%);
    border: none;
    margin: 0
}

.bse .divider-accent {
    height: 2px;
    background: linear-gradient(90deg, #FAF917 0%, transparent 80%);
    border: none;
    margin: 0
}

.bse .title-blk {
    position: relative;
    padding: 56px 0;
    background: linear-gradient(307deg, #000d8412 0%, #faf91714 100%), radial-gradient(ellipse at 8% 15%, #faf9172e 0%, transparent 60%);
    overflow: hidden
}

.bse .title-blk__shapes {
    position: absolute;
    inset: 0;
    pointer-events: none
}

.bse .title-blk__shape--a {
    position: absolute;
    top: -40px;
    right: -60px;
    width: 320px;
    height: 320px;
    border: 40px solid #000d840d;
    border-radius: 22px;
    transform: rotate(18deg)
}

.bse .title-blk__shape--b {
    position: absolute;
    bottom: -30px;
    left: 5%;
    width: 180px;
    height: 180px;
    border: 24px solid #faf9171f;
    border-radius: 22px;
    transform: rotate(-10deg)
}

.bse .title-blk__shape--c {
    position: absolute;
    top: 30%;
    right: 20%;
    width: 90px;
    height: 90px;
    background: #e0f5ff38;
    border-radius: 22px;
    transform: rotate(30deg)
}

.bse .title-blk__row {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 56px;
    position: relative
}

.bse .title-blk__text {
    flex: 1 1 0;
    min-width: 0
}

.bse .title-blk__eyebrow {
    display: inline-block;
    font-size: 13px;
    line-height: 1.4;
    color: #000D84;
    background: #faf91773;
    border-radius: 2px;
    padding: 4px 16px;
    margin-bottom: 16px;
    font-weight: 600;
    letter-spacing: .04em
}

.bse .title-blk__h1 {
    font-size: 50px;
    line-height: 1.15;
    color: #000D84;
    margin: 0 0 28px;
    text-shadow: 1px 2px 0 #faf91799 0 4px 18px #000d841f;
    text-align: center
}

.bse .title-blk__desc {
    font-size: 17px;
    line-height: 1.65;
    color: #1a1e4a;
    margin: 0 0 28px;
    text-align: left
}

.bse .title-blk__theses {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin: 0 0 28px
}

.bse .title-blk__thesis {
    font-size: 15px;
    line-height: 1.4;
    color: #000D84;
    padding: 8px 16px;
    background: #e0f5ff8c;
    border-radius: 2px;
    border-left: 3px solid #FAF917;
    border-top: 1px solid #000d8414
}

.bse .title-blk__img-col {
    flex: 0 0 340px;
    position: relative
}

.bse .title-blk__img-wrap {
    width: 340px;
    height: 420px;
    border-radius: 22px;
    overflow: hidden;
    box-shadow: -1px 9px 36px -1px #000d8421;
    opacity: .82
}

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

.bse .title-blk__badge {
    position: absolute;
    bottom: -16px;
    left: -16px;
    background: #000D84;
    color: #FAF917;
    border-radius: 22px;
    padding: 16px 28px;
    font-size: 13px;
    line-height: 1.4;
    font-weight: 700;
    box-shadow: -1px 5px 14px -1px #000d8421
}

.bse .title-blk__badge span {
    display: block;
    font-size: 21px;
    line-height: 1.15
}

.bse .approach-blk {
    padding: 56px 0;
    background: #fff;
    border-right: 4px solid #faf917b3
}

.bse .approach-blk__h2 {
    font-size: 38px;
    line-height: 1.15;
    color: #000D84;
    text-align: center;
    margin: 0 0 8px;
    text-shadow: 0 3px 12px #000d841a
}

.bse .approach-blk__sub {
    font-size: 15px;
    line-height: 1.65;
    color: #333a6e;
    text-align: center;
    margin: 0 0 28px;
    max-width: 620px;
    margin-left: auto;
    margin-right: auto
}

.bse .approach-blk__grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
    margin-top: 28px
}

.bse .approach-card {
    background: linear-gradient(307deg, #e0f5ffb3 0%, #faf91714 100%), radial-gradient(ellipse at 90% 10%, #000d840a 0%, transparent 70%);
    border-radius: 22px;
    padding: 28px 16px 16px;
    box-shadow: -1px 2px 3px -1px #000d840d -1px 5px 14px -1px #000d8417;
    transition: box-shadow .38s cubic-bezier(0.4, 0, 0.2, 1), transform .28s ease-in-out;
    position: relative;
    overflow: hidden
}

.bse .approach-card:hover {
    box-shadow: -1px 9px 36px -1px #000d8421;
    transform: translateY(-2px)
}

.bse .approach-card__icon {
    width: 40px;
    height: 40px;
    background: #000D84;
    border-radius: 2px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 16px
}

.bse .approach-card__icon svg {
    width: 22px;
    height: 22px;
    fill: #FAF917
}

.bse .approach-card__h4 {
    font-size: 17px;
    line-height: 1.4;
    color: #000D84;
    margin: 0 0 8px;
    font-weight: 700;
    text-shadow: 0 1px 4px #000d8414
}

.bse .approach-card__p {
    font-size: 13px;
    line-height: 1.65;
    color: #2a3060;
    margin: 0
}

.bse .approach-blk__img-row {
    display: flex;
    flex-direction: row;
    gap: 16px;
    margin-top: 28px;
    align-items: stretch
}

.bse .approach-blk__img-wrap {
    flex: 0 0 280px;
    height: 200px;
    border-radius: 22px;
    overflow: hidden;
    box-shadow: -1px 5px 14px -1px #000d8417
}

.bse .approach-blk__img-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
    animation: img-zoom 12s ease-in-out infinite alternate
}

@keyframes img-zoom {
    0% {
        transform: scale(1)
    }

    100% {
        transform: scale(1.06)
    }
}

.bse .approach-blk__aside {
    flex: 1 1 0;
    background: #000d840a;
    border-radius: 22px;
    padding: 28px;
    display: flex;
    flex-direction: column;
    justify-content: center
}

.bse .approach-blk__aside-h4 {
    font-size: 21px;
    line-height: 1.4;
    color: #000D84;
    margin: 0 0 8px;
    font-weight: 700
}

.bse .approach-blk__aside-p {
    font-size: 15px;
    line-height: 1.65;
    color: #2a3060;
    margin: 0
}

.bse .journey-blk {
    padding: 56px 0 28px;
    background: linear-gradient(307deg, #000d840f 0%, #e0f5ff8c 100%), radial-gradient(ellipse at 92% 80%, #faf91724 0%, transparent 55%)
}

.bse .journey-blk__h2 {
    font-size: 38px;
    line-height: 1.15;
    color: #000D84;
    text-align: center;
    margin: 0 0 8px;
    text-shadow: 0 2px 10px #000d841a
}

.bse .journey-blk__intro {
    font-size: 15px;
    line-height: 1.65;
    color: #2a3060;
    text-align: center;
    max-width: 560px;
    margin: 0 auto 56px
}

.bse .journey-blk__track {
    display: flex;
    flex-direction: column;
    gap: 0;
    position: relative
}

.bse .journey-step {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 28px;
    padding: 28px 0;
    position: relative
}

.bse .journey-step__num-col {
    display: flex;
    flex-direction: column;
    align-items: center;
    flex: 0 0 56px
}

.bse .journey-step__num {
    width: 56px;
    height: 56px;
    border-radius: 2px;
    background: #000D84;
    color: #FAF917;
    font-size: 21px;
    font-weight: 700;
    line-height: 56px;
    text-align: center;
    box-shadow: -1px 5px 14px -1px #000d8421;
    flex-shrink: 0;
    animation: shadow-build .9s ease-in-out both
}

.bse .journey-step:nth-child(2) .journey-step__num {
    animation-delay: .15s
}

.bse .journey-step:nth-child(3) .journey-step__num {
    animation-delay: .3s
}

.bse .journey-step:nth-child(4) .journey-step__num {
    animation-delay: .45s
}

@keyframes shadow-build {
    0% {
        box-shadow: -1px 2px 3px -1px #000d8400
    }

    100% {
        box-shadow: -1px 5px 14px -1px #000d8421
    }
}

.bse .journey-step__line {
    width: 2px;
    flex: 1 1 0;
    min-height: 40px;
    background: linear-gradient(180deg, #000D84 0%, #E0F5FF 100%);
    margin-top: 4px
}

.bse .journey-step--last .journey-step__line {
    display: none
}

.bse .journey-step__body {
    flex: 1 1 0;
    padding-bottom: 16px
}

.bse .journey-step__h4 {
    font-size: 17px;
    line-height: 1.4;
    color: #000D84;
    margin: 0 0 8px;
    font-weight: 700;
    text-shadow: 0 1px 6px #000d8412
}

.bse .journey-step__p {
    font-size: 13px;
    line-height: 1.65;
    color: #2a3060;
    margin: 0
}

.bse .journey-step__img {
    flex: 0 0 220px;
    height: 160px;
    border-radius: 22px;
    overflow: hidden;
    box-shadow: -1px 5px 14px -1px #000d8417
}

.bse .journey-step__img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block
}

.bse .voices-blk {
    padding: 56px 0;
    background: #fff;
    border-right: 4px solid #000d841f
}

.bse .voices-blk__h2 {
    font-size: 38px;
    line-height: 1.15;
    color: #000D84;
    text-align: center;
    margin: 0 0 8px;
    text-shadow: 0 2px 8px #000d841a
}

.bse .voices-blk__sub {
    font-size: 15px;
    line-height: 1.65;
    color: #2a3060;
    text-align: center;
    margin: 0 0 28px
}

.bse .voices-blk__row {
    display: flex;
    flex-direction: row;
    gap: 16px;
    align-items: stretch
}

.bse .voice-card {
    flex: 1 1 0;
    background: linear-gradient(307deg, #e0f5ffa6 0%, #faf9170f 100%), radial-gradient(ellipse at 10% 90%, #000d840a 0%, transparent 60%);
    border-radius: 22px;
    padding: 28px;
    box-shadow: -1px 2px 3px -1px #000d840d -1px 5px 14px -1px #000d8417;
    display: flex;
    flex-direction: column;
    gap: 16px;
    transition: box-shadow .35s ease-in-out
}

.bse .voice-card:hover {
    box-shadow: -1px 9px 36px -1px #000d8421
}

.bse .voice-card__portrait {
    width: 72px;
    height: 100px;
    border-radius: 2px;
    overflow: hidden;
    flex-shrink: 0
}

.bse .voice-card__portrait img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top;
    display: block
}

.bse .voice-card__header {
    display: flex;
    flex-direction: row;
    gap: 16px;
    align-items: flex-start
}

.bse .voice-card__meta {
    display: flex;
    flex-direction: column;
    gap: 4px;
    justify-content: center
}

.bse .voice-card__name {
    font-size: 17px;
    line-height: 1.4;
    color: #000D84;
    font-weight: 700
}

.bse .voice-card__role {
    font-size: 13px;
    line-height: 1.4;
    color: #555c8e
}

.bse .voice-card__stars {
    display: flex;
    flex-direction: row;
    gap: 4px
}

.bse .voice-card__star {
    width: 14px;
    height: 14px
}

.bse .voice-card__star svg {
    width: 14px;
    height: 14px;
    fill: #FAF917;
    stroke: #c8a800;
    stroke-width: 1
}

.bse .voice-card__quote {
    font-size: 15px;
    line-height: 1.65;
    color: #2a3060;
    margin: 0;
    padding: 16px;
    background: #ffffffa6;
    border-radius: 2px;
    border-left: 3px solid #000D84;
    border-top: 1px solid #000d8414;
    box-shadow: inset 0 6px 10px -4px #000d840f
}

.bse .voice-card--no-portrait .voice-card__portrait {
    display: none
}

.bse .field-blk {
    padding: 56px 0;
    background: linear-gradient(307deg, #faf9171a 0%, #000d8412 100%), radial-gradient(ellipse at 5% 30%, #e0f5ff99 0%, transparent 55%);
    backdrop-filter: blur(0px)
}

.bse .field-blk__row {
    display: flex;
    flex-direction: row;
    gap: 56px;
    align-items: flex-start
}

.bse .field-blk__sidebar {
    flex: 0 0 260px;
    background: #000D84;
    border-radius: 22px;
    padding: 28px;
    box-shadow: -1px 9px 36px -1px #000d8421;
    color: #E0F5FF;
    display: flex;
    flex-direction: column;
    gap: 16px
}

.bse .field-blk__sidebar-h3 {
    font-size: 21px;
    line-height: 1.4;
    color: #FAF917;
    margin: 0;
    font-weight: 700;
    text-shadow: 0 2px 8px #0000002e
}

.bse .field-blk__sidebar-p {
    font-size: 13px;
    line-height: 1.65;
    color: #c8d6f5;
    margin: 0
}

.bse .field-blk__metric {
    background: #faf9171a;
    border-radius: 2px;
    padding: 8px 16px;
    display: flex;
    flex-direction: column;
    gap: 4px
}

.bse .field-blk__metric-val {
    font-size: 38px;
    line-height: 1.15;
    color: #FAF917;
    font-weight: 700
}

.bse .field-blk__metric-lbl {
    font-size: 13px;
    line-height: 1.4;
    color: #a8c0ee
}

.bse .field-blk__main {
    flex: 1 1 0;
    display: flex;
    flex-direction: column;
    gap: 28px
}

.bse .field-blk__h2 {
    font-size: 38px;
    line-height: 1.15;
    color: #000D84;
    margin: 0;
    text-shadow: 0 2px 10px #000d8417
}

.bse .field-blk__p {
    font-size: 15px;
    line-height: 1.65;
    color: #2a3060;
    margin: 0
}

.bse .field-blk__tags {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 8px
}

.bse .field-blk__tag {
    font-size: 13px;
    line-height: 1.4;
    color: #000D84;
    background: #faf91780;
    border-radius: 2px;
    padding: 4px 16px;
    font-weight: 600;
    border: 1px solid #000d841f;
    border-bottom: 2px solid #000d842e
}

.bse .field-blk__img-wrap {
    width: 100%;
    height: 180px;
    border-radius: 22px;
    overflow: hidden;
    box-shadow: -1px 5px 14px -1px #000d8417
}

.bse .field-blk__img-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
    animation: img-zoom 14s ease-in-out infinite alternate
}

.bse .peers-blk {
    padding: 56px 0;
    background: #fff;
    position: relative
}

.bse .peers-blk__frosted {
    background: #e0f5ff8c;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border-radius: 22px;
    padding: 28px;
    box-shadow: -1px 5px 14px -1px #000d8417
}

.bse .peers-blk__h2 {
    font-size: 38px;
    line-height: 1.15;
    color: #000D84;
    text-align: center;
    margin: 0 0 8px;
    text-shadow: 0 2px 10px #000d841a
}

.bse .peers-blk__sub {
    font-size: 15px;
    line-height: 1.65;
    color: #2a3060;
    text-align: center;
    margin: 0 0 28px;
    max-width: 540px;
    margin-left: auto;
    margin-right: auto
}

.bse .peers-blk__asymrow {
    display: flex;
    flex-direction: row;
    gap: 28px;
    align-items: stretch
}

.bse .peers-blk__rich {
    flex: 2 1 0;
    display: flex;
    flex-direction: column;
    gap: 16px
}

.bse .peers-blk__minimal {
    flex: 1 1 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: 16px;
    padding: 28px;
    background: #000D84;
    border-radius: 22px;
    box-shadow: -1px 9px 36px -1px #000d8421
}

.bse .peers-blk__minimal-h4 {
    font-size: 21px;
    line-height: 1.4;
    color: #FAF917;
    margin: 0;
    font-weight: 700
}

.bse .peers-blk__minimal-p {
    font-size: 13px;
    line-height: 1.65;
    color: #c8d6f5;
    margin: 0
}

.bse .peers-blk__minimal-link {
    display: inline-block;
    font-size: 13px;
    line-height: 1.4;
    color: #000D84;
    background: #FAF917;
    border-radius: 2px;
    padding: 8px 16px;
    font-weight: 700;
    text-decoration: none;
    box-shadow: -1px 2px 3px -1px #000d8417;
    transition: background .28s ease-in-out, color .28s ease-in-out
}

.bse .peers-blk__minimal-link:hover {
    background: #E0F5FF;
    color: #000D84
}

.bse .peers-card {
    background: linear-gradient(307deg, #faf91714 0%, #e0f5ff80 100%), radial-gradient(ellipse at 80% 20%, #000d840a 0%, transparent 60%);
    border-radius: 22px;
    padding: 16px 28px;
    box-shadow: -1px 2px 3px -1px #000d840d;
    display: flex;
    flex-direction: row;
    gap: 16px;
    align-items: flex-start
}

.bse .peers-card__icon {
    flex-shrink: 0;
    width: 36px;
    height: 36px;
    background: #000d8414;
    border-radius: 2px;
    display: flex;
    align-items: center;
    justify-content: center
}

.bse .peers-card__icon svg {
    width: 20px;
    height: 20px;
    fill: #000D84
}

.bse .peers-card__h5 {
    font-size: 15px;
    line-height: 1.4;
    color: #000D84;
    margin: 0 0 4px;
    font-weight: 700
}

.bse .peers-card__p {
    font-size: 13px;
    line-height: 1.65;
    color: #2a3060;
    margin: 0
}

.bse .support-blk {
    padding: 56px 0;
    background: linear-gradient(307deg, #e0f5ff8c 0%, #faf91712 100%), radial-gradient(ellipse at 95% 5%, #000d840f 0%, transparent 55%)
}

.bse .support-blk__h2 {
    font-size: 38px;
    line-height: 1.15;
    color: #000D84;
    text-align: center;
    margin: 0 0 8px;
    text-shadow: 0 2px 10px #000d8417
}

.bse .support-blk__sub {
    font-size: 15px;
    line-height: 1.65;
    color: #2a3060;
    text-align: center;
    margin: 0 0 28px;
    max-width: 520px;
    margin-left: auto;
    margin-right: auto
}

.bse .support-blk__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px
}

.bse .support-item {
    background: #fff;
    border-radius: 22px;
    padding: 28px;
    box-shadow: -1px 2px 3px -1px #000d840d -1px 5px 14px -1px #000d8417;
    display: flex;
    flex-direction: column;
    gap: 8px;
    transition: box-shadow .32s cubic-bezier(0.4, 0, 0.2, 1)
}

.bse .support-item:hover {
    box-shadow: -1px 9px 36px -1px #000d8421
}

.bse .support-item--wide {
    grid-column: 1 / -1;
    flex-direction: row;
    align-items: flex-start;
    gap: 28px
}

.bse .support-item__icon {
    width: 44px;
    height: 44px;
    background: #faf9178c;
    border-radius: 2px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    border: 1px solid #000d841a;
    border-bottom: 2px solid #000d842e
}

.bse .support-item__icon svg {
    width: 24px;
    height: 24px;
    fill: #000D84
}

.bse .support-item__h4 {
    font-size: 17px;
    line-height: 1.4;
    color: #000D84;
    margin: 0;
    font-weight: 700;
    text-shadow: 0 1px 4px #000d8412
}

.bse .support-item__p {
    font-size: 13px;
    line-height: 1.65;
    color: #2a3060;
    margin: 0
}

.bse .support-item--wide .support-item__body {
    flex: 1 1 0
}

@media (max-width: 900px) {
    .bse .title-blk__row {
        flex-direction: column;
        gap: 28px
    }

    .bse .title-blk__img-col {
        flex: 0 0 auto;
        width: 100%
    }

    .bse .title-blk__img-wrap {
        width: 100%;
        height: 280px
    }

    .bse .title-blk__badge {
        bottom: 8px;
        left: 8px
    }

    .bse .approach-blk__grid {
        grid-template-columns: 1fr
    }

    .bse .approach-blk__img-row {
        flex-direction: column
    }

    .bse .approach-blk__img-wrap {
        flex: 0 0 auto;
        width: 100%;
        height: 200px
    }

    .bse .field-blk__row {
        flex-direction: column;
        gap: 28px
    }

    .bse .field-blk__sidebar {
        flex: 0 0 auto;
        width: 100%
    }

    .bse .voices-blk__row {
        flex-direction: column
    }

    .bse .peers-blk__asymrow {
        flex-direction: column
    }

    .bse .support-blk__grid {
        grid-template-columns: 1fr
    }

    .bse .support-item--wide {
        grid-column: auto;
        flex-direction: column
    }
}

@media (max-width: 600px) {
    .bse .title-blk__h1 {
        font-size: 38px
    }

    .bse .approach-blk__h2,
    .bse .journey-blk__h2,
    .bse .voices-blk__h2,
    .bse .field-blk__h2,
    .bse .peers-blk__h2,
    .bse .support-blk__h2 {
        font-size: 21px
    }

    .bse .title-blk {
        padding: 28px 0
    }

    .bse .approach-blk,
    .bse .journey-blk,
    .bse .voices-blk,
    .bse .field-blk,
    .bse .peers-blk,
    .bse .support-blk {
        padding: 28px 0
    }

    .bse .journey-step {
        flex-direction: column;
        gap: 8px
    }

    .bse .journey-step__img {
        flex: 0 0 auto;
        width: 100%;
        height: 140px
    }

    .bse .journey-step__num-col {
        flex-direction: row;
        align-items: center
    }

    .bse .journey-step__line {
        width: 40px;
        height: 2px;
        min-height: auto;
        background: linear-gradient(90deg, #000D84 0%, #E0F5FF 100%)
    }

    .bse .field-blk__metric-val {
        font-size: 21px
    }
}

@media (max-width: 1200px) {
    .bse .approach-blk__grid {
        grid-template-columns: repeat(2, 1fr)
    }
}

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

.abt__inner {
    max-width: 1024px;
    margin: 0 auto;
    padding: 0 28px
}

.abt__split {
    display: flex;
    flex-direction: row;
    min-height: 340px
}

.abt__split-left {
    flex: 0 0 52%;
    background: #000D84;
    padding: 56px 56px 56px 28px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: relative
}

.abt__split-right {
    flex: 0 0 48%;
    background: #FAF917;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden
}

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

.abt__tag {
    display: inline-block;
    background: #faf91726;
    border: 1px solid #faf91766;
    border-radius: 2px;
    color: #FAF917;
    font-size: 13px;
    line-height: 1.4;
    padding: 4px 16px;
    margin-bottom: 16px;
    letter-spacing: .04em
}

.abt__h1 {
    font-size: 50px;
    line-height: 1.15;
    color: #FAF917;
    margin: 0 0 16px;
    text-shadow: 0 2px 12px #000d8480 0 1px 0 #0000004d
}

.abt__lead {
    font-size: 17px;
    line-height: 1.65;
    color: #E0F5FF;
    margin: 0 0 28px;
    max-width: 420px
}

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

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

.abt__thesis-icon {
    flex-shrink: 0;
    width: 20px;
    height: 20px;
    border: 1.5px solid #faf91799;
    border-radius: 2px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 2px
}

.abt__thesis-icon svg {
    width: 12px;
    height: 12px;
    fill: #FAF917
}

.abt__thesis-text {
    font-size: 15px;
    line-height: 1.65;
    color: #E0F5FF;
    margin: 0
}

.abt__deco-arrow {
    position: absolute;
    bottom: 28px;
    right: -20px;
    width: 40px;
    height: 40px;
    z-index: 2
}

.abt__deco-arrow svg {
    width: 40px;
    height: 40px
}

.abt__mission {
    background: #fff;
    padding: 56px 0;
    position: relative
}

.abt__mission::before {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: #000d841a
}

.abt__mission-grid {
    display: grid;
    grid-template-columns: 1fr 2fr 3fr;
    gap: 28px;
    align-items: start
}

.abt__mission-col {
    display: flex;
    flex-direction: column
}

.abt__mission-col--a {
    padding-top: 8px
}

.abt__mission-col--b {
    border-left: 2px solid #000d841f;
    border-right: 1px solid #000d8412;
    padding-left: 28px;
    padding-right: 16px
}

.abt__mission-col--c {
    padding-left: 16px
}

.abt__col-num {
    font-size: 50px;
    line-height: 1.15;
    color: #FAF917;
    font-weight: 700;
    text-shadow: -1px 2px 3px #faf9170d -1px 5px 14px #faf91717;
    margin: 0 0 8px
}

.abt__col-label {
    font-size: 13px;
    line-height: 1.4;
    color: #000d8480;
    text-transform: uppercase;
    letter-spacing: .06em;
    margin: 0 0 16px
}

.abt__col-h {
    font-size: 21px;
    line-height: 1.4;
    color: #000D84;
    margin: 0 0 16px;
    text-shadow: -1px 2px 3px #000d840d
}

.abt__col-p {
    font-size: 15px;
    line-height: 1.65;
    color: #1a2050;
    margin: 0 0 16px
}

.abt__col-p:last-child {
    margin-bottom: 0
}

.abt__mission-img {
    width: 100%;
    height: 220px;
    object-fit: cover;
    object-position: center;
    border-radius: 2px;
    margin-bottom: 16px;
    box-shadow: -1px 5px 14px -1px #000d8417;
    display: block;
    mask-image: linear-gradient(to bottom, #000f 60%, #0000 100%);
    -webkit-mask-image: linear-gradient(to bottom, #000f 60%, #0000 100%)
}

.abt__divider {
    height: 1px;
    background: #000d8414;
    max-width: 1024px;
    margin: 0 auto
}

.abt__team {
    background: linear-gradient(307deg, #E0F5FF 0%, #fff 60%), radial-gradient(ellipse at 20% 80%, #faf9171f 0%, transparent 60%);
    padding: 56px 0;
    position: relative
}

.abt__team-wrap {
    display: flex;
    flex-direction: row;
    gap: 56px;
    align-items: flex-start
}

.abt__team-portrait {
    flex: 0 0 260px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px
}

.abt__portrait-ring {
    width: 220px;
    height: 220px;
    border-radius: 50%;
    overflow: hidden;
    box-shadow: -1px 9px 36px -1px #000d8421;
    border: 3px solid #FAF917
}

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

.abt__portrait-name {
    font-size: 17px;
    line-height: 1.4;
    color: #000D84;
    margin: 0;
    text-align: center;
    font-weight: 600
}

.abt__portrait-role {
    font-size: 13px;
    line-height: 1.4;
    color: #000d8499;
    margin: 0;
    text-align: center
}

.abt__team-content {
    flex: 1;
    display: flex;
    flex-direction: column
}

.abt__team-h {
    font-size: 38px;
    line-height: 1.15;
    color: #000D84;
    margin: 0 0 16px;
    text-shadow: -1px 2px 3px #000d840d -1px 5px 14px #000d8417
}

.abt__team-p {
    font-size: 15px;
    line-height: 1.65;
    color: #1a2050;
    margin: 0 0 16px
}

.abt__steps {
    display: flex;
    flex-direction: column;
    margin-top: 16px;
    gap: 0
}

.abt__step {
    display: flex;
    flex-direction: row;
    gap: 16px;
    align-items: stretch;
    position: relative
}

.abt__step-track {
    display: flex;
    flex-direction: column;
    align-items: center;
    flex-shrink: 0;
    width: 32px
}

.abt__step-dot {
    width: 28px;
    height: 28px;
    border-radius: 2px;
    background: #000D84;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    box-shadow: -1px 2px 3px -1px #000d840d
}

.abt__step-dot svg {
    width: 14px;
    height: 14px;
    fill: #FAF917
}

.abt__step-line {
    flex: 1;
    width: 1px;
    background: #000d8433;
    border-left: 1px dashed #000d844d;
    min-height: 20px
}

.abt__step:last-child .abt__step-line {
    display: none
}

.abt__step-body {
    flex: 1;
    padding-bottom: 16px
}

.abt__step-h {
    font-size: 15px;
    line-height: 1.4;
    color: #000D84;
    margin: 4px 0;
    font-weight: 600
}

.abt__step-p {
    font-size: 13px;
    line-height: 1.65;
    color: #1a2050;
    margin: 0
}

.abt__approach {
    position: relative;
    padding: 56px 0;
    overflow: hidden
}

.abt__approach-bg {
    position: absolute;
    inset: 0;
    background: linear-gradient(307deg, #000D84 0%, #019 50%, #000a6e 100%), radial-gradient(ellipse at 80% 20%, #e0f5ff14 0%, transparent 55%);
    z-index: 0
}

.abt__topo {
    position: absolute;
    inset: 0;
    z-index: 1;
    opacity: .06;
    pointer-events: none;
    overflow: hidden
}

.abt__topo svg {
    width: 100%;
    height: 100%
}

.abt__approach-inner {
    position: relative;
    z-index: 2;
    max-width: 1024px;
    margin: 0 auto;
    padding: 0 28px
}

.abt__approach-head {
    text-align: center;
    margin-bottom: 56px
}

.abt__approach-h {
    font-size: 38px;
    line-height: 1.15;
    color: #FAF917;
    margin: 0 0 16px;
    text-shadow: -1px 2px 3px #faf9170d -1px 5px 14px #faf91717
}

.abt__approach-sub {
    font-size: 17px;
    line-height: 1.65;
    color: #E0F5FF;
    margin: 0 auto;
    max-width: 560px
}

.abt__cards {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px
}

.abt__card {
    background: #e0f5ff12;
    border: 1px solid #e0f5ff26;
    border-radius: 22px;
    padding: 28px;
    display: flex;
    flex-direction: column;
    gap: 16px;
    box-shadow: -1px 5px 14px -1px #000d8417;
    transition: background .35s cubic-bezier(0.4, 0, 0.2, 1), box-shadow .35s cubic-bezier(0.4, 0, 0.2, 1);
    clip-path: inset(0 0 0 100%);
    animation: abt-reveal .38s cubic-bezier(0.4, 0, 0.2, 1) forwards
}

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

.abt__card:nth-child(2) {
    animation-delay: .12s
}

.abt__card:nth-child(3) {
    animation-delay: .19s
}

.abt__card:nth-child(4) {
    animation-delay: .26s
}

.abt__card:nth-child(5) {
    animation-delay: .33s
}

.abt__card:nth-child(6) {
    animation-delay: .4s
}

@keyframes abt-reveal {
    from {
        clip-path: inset(0 0 0 100%);
        transform: rotate(-2deg);
        opacity: 0
    }

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

.abt__card:hover {
    background: #e0f5ff21;
    box-shadow: -1px 9px 36px -1px #000d8421
}

.abt__card-icon {
    width: 40px;
    height: 40px;
    border: 1.5px solid #faf91780;
    border-radius: 2px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0
}

.abt__card-icon svg {
    width: 20px;
    height: 20px;
    fill: #FAF917
}

.abt__card-h {
    font-size: 17px;
    line-height: 1.4;
    color: #FAF917;
    margin: 0;
    text-shadow: -1px 2px 3px #faf9170d
}

.abt__card-p {
    font-size: 13px;
    line-height: 1.65;
    color: #E0F5FF;
    margin: 0
}

.abt__approach-img-row {
    display: flex;
    flex-direction: row;
    gap: 16px;
    margin-top: 28px
}

.abt__approach-img-wrap {
    flex: 1;
    border-radius: 22px;
    overflow: hidden;
    height: 180px;
    box-shadow: -1px 9px 36px -1px #000d8421
}

.abt__approach-img-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
    mask-image: linear-gradient(307deg, #000000b3 0%, #000f 60%);
    -webkit-mask-image: linear-gradient(307deg, #000000b3 0%, #000f 60%)
}

.abt__contact-strip {
    background: #E0F5FF;
    padding: 28px 0;
    border-top: 1px solid #000d8414
}

.abt__contact-flex {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    flex-wrap: wrap
}

.abt__contact-item {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 8px
}

.abt__contact-icon {
    width: 32px;
    height: 32px;
    border: 1.5px solid #000d844d;
    border-radius: 2px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    background: #000d840d
}

.abt__contact-icon svg {
    width: 16px;
    height: 16px;
    fill: #000D84
}

.abt__contact-label {
    font-size: 13px;
    line-height: 1.4;
    color: #000d848c;
    margin: 0
}

.abt__contact-val {
    font-size: 15px;
    line-height: 1.4;
    color: #000D84;
    margin: 0;
    font-weight: 600
}

.abt__contact-texts {
    display: flex;
    flex-direction: column;
    gap: 2px
}

.abt__accent-wash {
    display: inline;
    background: #faf91759;
    border-radius: 2px;
    padding: 0 4px
}

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

    .abt__split-left {
        flex: none;
        padding: 56px 28px
    }

    .abt__split-right {
        flex: none;
        height: 260px
    }

    .abt__mission-grid {
        grid-template-columns: 1fr;
        gap: 28px
    }

    .abt__mission-col--b {
        border-left: none;
        border-right: none;
        border-top: 1px solid #000d841a;
        border-bottom: 1px solid #000d8412;
        padding: 28px 0
    }

    .abt__mission-col--c {
        padding-left: 0
    }

    .abt__team-wrap {
        flex-direction: column;
        gap: 28px;
        align-items: center
    }

    .abt__team-portrait {
        flex: none
    }

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

    .abt__approach-img-row {
        flex-direction: column
    }

    .abt__approach-img-wrap {
        height: 160px
    }
}

@media (max-width: 600px) {
    .abt__h1 {
        font-size: 38px
    }

    .abt__split-left {
        padding: 28px 16px
    }

    .abt__mission {
        padding: 28px 0
    }

    .abt__team {
        padding: 28px 0
    }

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

    .abt__approach-head {
        margin-bottom: 28px
    }

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

    .abt__team-h {
        font-size: 21px
    }

    .abt__approach-h {
        font-size: 21px
    }

    .abt__deco-arrow {
        display: none
    }
}

.abt__mission-col--a .abt__col-num {
    animation: abt-numload .4s cubic-bezier(0.4, 0, 0.2, 1) both
}

@keyframes abt-numload {
    from {
        transform: rotate(-4deg) translateY(8px);
        opacity: 0
    }

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

.anlx {
    max-width: 1024px;
    margin: 0 auto;
    padding: 0 28px;
    overflow-x: clip
}

.anlx .rpt-lead {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 56px;
    padding: 56px 0 28px;
    align-items: start;
    position: relative
}

.anlx .rpt-lead__text {
    padding: 28px 0 16px
}

.anlx .rpt-lead__eyebrow {
    font-size: 13px;
    line-height: 1.4;
    color: #000D84;
    letter-spacing: .08em;
    text-transform: uppercase;
    margin-bottom: 16px;
    display: flex;
    align-items: center;
    gap: 8px
}

.anlx .rpt-lead__eyebrow-line {
    display: inline-block;
    width: 28px;
    height: 2px;
    background: #FAF917;
    border-radius: 2px;
    flex-shrink: 0
}

.anlx .rpt-lead__h1 {
    font-size: 50px;
    line-height: 1.15;
    color: #000D84;
    margin: 0 0 28px;
    text-shadow: 1px 2px 0 #000d8421 0 0 32px #faf9172e;
    text-align: center
}

.anlx .rpt-lead__desc {
    font-size: 17px;
    line-height: 1.65;
    color: #1a2060;
    margin-bottom: 28px
}

.anlx .rpt-lead__meta {
    display: flex;
    flex-direction: row;
    gap: 16px;
    flex-wrap: wrap
}

.anlx .rpt-lead__badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: #000d840f;
    border: 1px solid #000d8424;
    border-radius: 2px;
    padding: 8px 16px;
    font-size: 13px;
    line-height: 1.4;
    color: #000D84
}

.anlx .rpt-lead__img-wrap {
    position: relative;
    border-radius: 22px;
    overflow: hidden;
    box-shadow: -1px 9px 36px -1px #000d8421
}

.anlx .rpt-lead__img-wrap::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(307deg, #faf91738 0%, #000d842e 100%);
    z-index: 1;
    pointer-events: none;
    mix-blend-mode: multiply
}

.anlx .rpt-lead__img-wrap::after {
    content: "";
    position: absolute;
    inset: 0;
    background: #000d8414;
    mix-blend-mode: hue;
    z-index: 2;
    pointer-events: none
}

.anlx .rpt-lead__img {
    display: block;
    width: 100%;
    height: 420px;
    object-fit: cover;
    object-position: center;
    border-radius: 22px
}

.anlx .rpt-lead__bg-num {
    position: absolute;
    top: 0;
    right: -16px;
    font-size: 200px;
    line-height: 1.15;
    color: #faf9172e;
    font-weight: 900;
    pointer-events: none;
    user-select: none;
    z-index: 0;
    white-space: nowrap
}

.anlx .rpt-lead__text {
    position: relative;
    z-index: 1
}

.anlx .divider-zz {
    width: 100%;
    overflow: hidden;
    line-height: 0;
    margin: 8px 0
}

.anlx .divider-zz svg {
    display: block;
    width: 100%
}

.anlx .metrics-belt {
    background: linear-gradient(307deg, #000d8412 0%, #e0f5ff99 60%, #faf91717 100%);
    border-radius: 22px;
    padding: 56px 28px;
    margin: 8px 0;
    position: relative
}

.anlx .metrics-belt__heading {
    font-size: 38px;
    line-height: 1.15;
    color: #000D84;
    text-align: center;
    margin: 0 0 8px;
    text-shadow: 0 2px 8px #000d8417
}

.anlx .metrics-belt__sub {
    font-size: 15px;
    line-height: 1.65;
    color: #1a2060;
    text-align: center;
    max-width: 560px;
    margin: 0 auto 56px
}

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

.anlx .metric-card {
    background: #fff;
    border-radius: 22px;
    padding: 28px 16px;
    text-align: center;
    box-shadow: -1px 5px 14px -1px #000d8417;
    transition: box-shadow .28s cubic-bezier(0.4, 0, 0.2, 1), transform .28s cubic-bezier(0.4, 0, 0.2, 1);
    cursor: default;
    position: relative
}

.anlx .metric-card:hover {
    box-shadow: -1px 9px 36px -1px #000d8421;
    transform: translateY(-4px)
}

.anlx .metric-card--accent {
    background: #000D84 !important
}

.anlx .metric-card--accent .metric-card__val {
    color: #FAF917
}

.anlx .metric-card--accent .metric-card__label {
    color: #e0f5ffd9
}

.anlx .metric-card--accent .metric-card__icon {
    color: #faf917b3
}

.anlx .metric-card__icon {
    font-size: 21px;
    color: #000d8473;
    margin-bottom: 8px;
    display: block
}

.anlx .metric-card__val {
    font-size: 38px;
    line-height: 1.15;
    color: #000D84;
    font-weight: 800;
    display: block;
    margin-bottom: 4px
}

.anlx .metric-card__label {
    font-size: 13px;
    line-height: 1.4;
    color: #3a4580
}

.anlx .metric-card__bar {
    margin-top: 16px;
    height: 4px;
    border-radius: 2px;
    background: #000d8414;
    overflow: hidden
}

.anlx .metric-card__bar-fill {
    height: 100%;
    border-radius: 2px;
    background: linear-gradient(90deg, #FAF917 0%, #000D84 100%);
    animation: bar-grow 1.1s cubic-bezier(0.4, 0, 0.2, 1) forwards;
    transform-origin: left
}

@keyframes bar-grow {
    from {
        transform: scaleX(0)
    }

    to {
        transform: scaleX(1)
    }
}

.anlx .metric-card--accent .metric-card__bar {
    background: #e0f5ff26
}

.anlx .metric-card--accent .metric-card__bar-fill {
    background: linear-gradient(90deg, #faf917cc 0%, #FAF917 100%)
}

.anlx .findings-area {
    padding: 56px 0 28px
}

.anlx .findings-area__top {
    display: flex;
    flex-direction: row;
    align-items: flex-end;
    justify-content: space-between;
    gap: 28px;
    margin-bottom: 28px
}

.anlx .findings-area__h2 {
    font-size: 38px;
    line-height: 1.15;
    color: #000D84;
    text-shadow: 1px 1px 0 #faf91780;
    margin: 0;
    text-align: left
}

.anlx .findings-area__note {
    font-size: 13px;
    line-height: 1.4;
    color: #3a4580;
    max-width: 240px;
    text-align: right;
    flex-shrink: 0
}

.anlx .findings-cols {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr;
    gap: 16px;
    margin-bottom: 28px
}

.anlx .finding-main {
    background: #e0f5ff8c;
    border-radius: 22px;
    padding: 28px;
    border-top: 3px solid #000D84;
    border-right: 1px solid #000d841a;
    box-shadow: -1px 2px 3px -1px #000d840d
}

.anlx .finding-main__tag {
    display: inline-block;
    font-size: 13px;
    line-height: 1.4;
    color: #000D84;
    background: #faf9178c;
    border-radius: 2px;
    padding: 4px 8px;
    margin-bottom: 16px
}

.anlx .finding-main__h3 {
    font-size: 21px;
    line-height: 1.4;
    color: #000D84;
    margin: 0 0 16px;
    text-shadow: 0 1px 0 #000d8414
}

.anlx .finding-main__body {
    font-size: 15px;
    line-height: 1.65;
    color: #1a2060
}

.anlx .finding-side {
    background: #fff;
    border-radius: 22px;
    padding: 28px 16px;
    display: flex;
    flex-direction: column;
    gap: 16px;
    box-shadow: -1px 5px 14px -1px #000d8417
}

.anlx .finding-side__h4 {
    font-size: 17px;
    line-height: 1.4;
    color: #000D84;
    margin: 0;
    text-shadow: 0 1px 0 #faf91766
}

.anlx .finding-side__body {
    font-size: 13px;
    line-height: 1.65;
    color: #1a2060;
    flex: 1
}

.anlx .finding-side__stat {
    font-size: 21px;
    line-height: 1.15;
    color: #000D84;
    font-weight: 700;
    background: #faf91759;
    border-radius: 2px;
    padding: 8px 16px;
    text-align: center
}

.anlx .steps-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 0
}

.anlx .steps-list__item {
    display: flex;
    flex-direction: row;
    gap: 16px;
    align-items: stretch;
    position: relative
}

.anlx .steps-list__item:not(:last-child) .steps-list__connector {
    display: block
}

.anlx .steps-list__left {
    display: flex;
    flex-direction: column;
    align-items: center;
    flex-shrink: 0;
    width: 36px
}

.anlx .steps-list__num {
    width: 36px;
    height: 36px;
    border-radius: 2px;
    background: #000D84;
    color: #FAF917;
    font-size: 15px;
    line-height: 1.15;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    box-shadow: -1px 2px 3px -1px #000d840d
}

.anlx .steps-list__connector {
    display: none;
    width: 2px;
    flex: 1;
    background: linear-gradient(180deg, #000d844d 0%, #faf91766 100%);
    margin: 4px 0;
    border-radius: 2px;
    min-height: 28px
}

.anlx .steps-list__body {
    padding: 4px 0 28px;
    flex: 1
}

.anlx .steps-list__h5 {
    font-size: 17px;
    line-height: 1.4;
    color: #000D84;
    margin: 0 0 8px
}

.anlx .steps-list__desc {
    font-size: 15px;
    line-height: 1.65;
    color: #1a2060
}

.anlx .steps-list__item:last-child .steps-list__body {
    padding-bottom: 0
}

.anlx .frosted-strip {
    background: #e0f5ff73;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border-radius: 22px;
    border: 1px solid #000d8417;
    padding: 28px;
    margin-top: 28px;
    display: flex;
    flex-direction: row;
    gap: 28px;
    align-items: center;
    box-shadow: -1px 5px 14px -1px #000d8417
}

.anlx .frosted-strip__icon {
    font-size: 38px;
    color: #000D84;
    flex-shrink: 0;
    animation: icon-sway 3.2s ease-in-out infinite
}

@keyframes icon-sway {

    0%,
    100% {
        transform: rotate(-4deg)
    }

    50% {
        transform: rotate(4deg)
    }
}

.anlx .frosted-strip__text {
    flex: 1
}

.anlx .frosted-strip__h4 {
    font-size: 17px;
    line-height: 1.4;
    color: #000D84;
    margin: 0 0 8px
}

.anlx .frosted-strip__p {
    font-size: 15px;
    line-height: 1.65;
    color: #1a2060;
    margin: 0
}

.anlx .frosted-strip__link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: #000D84;
    color: #FAF917;
    font-size: 15px;
    line-height: 1.4;
    padding: 16px 28px;
    border-radius: 2px;
    text-decoration: none;
    flex-shrink: 0;
    box-shadow: -1px 5px 14px -1px #000d8421;
    transition: background .25s cubic-bezier(0.4, 0, 0.2, 1), color .25s cubic-bezier(0.4, 0, 0.2, 1)
}

.anlx .frosted-strip__link:hover {
    background: #FAF917;
    color: #000D84
}

.anlx .frosted-strip__link:focus-visible {
    outline: 3px solid #000D84;
    outline-offset: 2px
}

@media (max-width: 900px) {
    .anlx .rpt-lead {
        grid-template-columns: 1fr;
        gap: 28px;
        padding: 28px 0 16px
    }

    .anlx .rpt-lead__bg-num {
        display: none
    }

    .anlx .rpt-lead__img {
        height: 260px
    }

    .anlx .rpt-lead__h1 {
        font-size: 38px
    }

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

    .anlx .findings-cols {
        grid-template-columns: 1fr
    }

    .anlx .findings-area__top {
        flex-direction: column;
        align-items: flex-start
    }

    .anlx .findings-area__note {
        text-align: left;
        max-width: 100%
    }

    .anlx .frosted-strip {
        flex-direction: column;
        align-items: flex-start
    }
}

@media (max-width: 600px) {
    .anlx {
        padding: 0 16px
    }

    .anlx .rpt-lead__h1 {
        font-size: 38px
    }

    .anlx .metrics-belt {
        padding: 28px 16px
    }

    .anlx .metrics-belt__grid {
        grid-template-columns: 1fr 1fr;
        gap: 8px
    }

    .anlx .metric-card {
        padding: 16px 8px
    }

    .anlx .metric-card__val {
        font-size: 21px
    }

    .anlx .metrics-belt__heading {
        font-size: 21px
    }

    .anlx .findings-area__h2 {
        font-size: 21px
    }

    .anlx .frosted-strip {
        gap: 16px
    }
}

.suc-page {
    min-height: 80vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 56px 28px;
    background: linear-gradient(307deg, #E0F5FF 0%, #fff 60%), radial-gradient(ellipse at 80% 20%, #faf9172e 0%, transparent 65%)
}

.suc-page .suc-card {
    max-width: 1024px;
    width: 100%;
    background: #fff;
    border-radius: 22px;
    padding: 56px;
    box-shadow: -1px 5px 14px -1px #000d8417 -1px 9px 36px -1px #000d8421;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 28px
}

.suc-page .suc-card__icon-wrap {
    width: 80px;
    height: 80px;
    border-radius: 22px;
    background: linear-gradient(307deg, #faf91747 0%, #e0f5ff99 100%);
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    box-shadow: inset 0 6px 10px #000d8412;
    flex-shrink: 0
}

.suc-page .suc-card__icon-wrap svg {
    display: block
}

.suc-page .suc-card__heading {
    font-size: 38px;
    line-height: 1.15;
    color: #000D84;
    text-align: center;
    margin: 0;
    text-shadow: 0 2px 8px #000d841a
}

.suc-page .suc-card__sub {
    font-size: 17px;
    line-height: 1.65;
    color: #1a2a6e;
    text-align: center;
    margin: 0;
    max-width: 560px
}

.suc-page .suc-card__divider {
    width: 100%;
    height: 2px;
    border-radius: 2px;
    background: linear-gradient(307deg, #FAF917 0%, #E0F5FF 100%);
    border: none;
    margin: 0
}

.suc-page .suc-card__detail {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 16px;
    background: #e0f5ff73;
    border-radius: 22px;
    padding: 28px;
    width: 100%;
    border: 1.5px solid #000d8414;
    box-shadow: -1px 2px 3px -1px #000d840d
}

.suc-page .suc-card__detail-icon {
    flex-shrink: 0;
    margin-top: 2px
}

.suc-page .suc-card__detail-body {
    display: flex;
    flex-direction: column;
    gap: 8px
}

.suc-page .suc-card__detail-title {
    font-size: 15px;
    line-height: 1.4;
    color: #000D84;
    font-weight: 700;
    margin: 0
}

.suc-page .suc-card__detail-text {
    font-size: 15px;
    line-height: 1.65;
    color: #2a3a7e;
    margin: 0
}

.suc-page .suc-card__actions {
    display: flex;
    flex-direction: row;
    gap: 16px;
    flex-wrap: wrap;
    justify-content: center
}

.suc-page .suc-btn {
    display: inline-flex;
    flex-direction: row;
    align-items: center;
    gap: 8px;
    padding: 16px 28px;
    border-radius: 22px;
    font-size: 15px;
    line-height: 1.4;
    font-weight: 700;
    cursor: pointer;
    text-decoration: none;
    border: none;
    transition: background .28s cubic-bezier(0.4, 0, 0.2, 1), color .28s cubic-bezier(0.4, 0, 0.2, 1), box-shadow .35s ease-in-out
}

.suc-page .suc-btn--primary {
    background: #000D84;
    color: #FAF917;
    box-shadow: -1px 5px 14px -1px #000d8421
}

.suc-page .suc-btn--primary:hover {
    background: #0012b0;
    box-shadow: -1px 9px 36px -1px #000d842e
}

.suc-page .suc-btn--primary:focus {
    outline: 3px solid #FAF917;
    outline-offset: 2px
}

.suc-page .suc-btn--primary:active {
    background: #000a6a;
    box-shadow: inset 0 4px 10px #000d842e
}

.suc-page .suc-btn--outline {
    background: transparent;
    color: #000D84;
    border: 2px solid #000D84;
    box-shadow: -1px 2px 3px -1px #000d840d
}

.suc-page .suc-btn--outline:hover {
    background: #000d840f;
    box-shadow: -1px 5px 14px -1px #000d8417
}

.suc-page .suc-btn--outline:focus {
    outline: 3px solid #000D84;
    outline-offset: 2px
}

.suc-page .suc-btn--outline:active {
    background: #000d841f;
    box-shadow: inset 0 4px 8px #000d841a
}

.suc-page .suc-card__note {
    font-size: 13px;
    line-height: 1.65;
    color: #4a5a9e;
    text-align: center;
    margin: 0
}

.suc-page .suc-card__note a {
    color: #000D84;
    font-weight: 700;
    text-decoration: underline;
    text-underline-offset: 3px;
    transition: color .26s ease-in-out
}

.suc-page .suc-card__note a:hover {
    color: #0012b0
}

@media (max-width: 600px) {
    .suc-page {
        padding: 28px 16px
    }

    .suc-page .suc-card {
        padding: 28px 16px;
        gap: 16px
    }

    .suc-page .suc-card__heading {
        font-size: 21px
    }

    .suc-page .suc-card__sub {
        font-size: 15px
    }

    .suc-page .suc-card__detail {
        flex-direction: column;
        gap: 8px;
        padding: 16px
    }

    .suc-page .suc-card__actions {
        flex-direction: column;
        width: 100%
    }

    .suc-page .suc-btn {
        width: 100%;
        justify-content: center
    }
}

@media (min-width: 601px) and (max-width: 900px) {
    .suc-page .suc-card {
        padding: 56px 28px
    }
}