body {
    margin: 0;
    min-height: 100dvh;
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
    font-family: 'Nunito', sans-serif;
    background: #fefefe;
    color: #2a2a2a
}

.topbar-box {
    box-sizing: border-box
}

.hd-box {
    box-sizing: border-box
}

.ftr-box {
    box-sizing: border-box
}

.topbar-box {
    background: linear-gradient(135deg, #f7f7f7 0%, #fff 100%);
    border-bottom: 1px solid #dc283314;
    padding: 8px 0
}

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

.topbar__locale {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    line-height: 1.3;
    color: #4a4a4a;
    font-family: 'Inconsolata', monospace;
    letter-spacing: .02em
}

.topbar__locale-icon {
    width: 18px;
    height: 18px;
    fill: #DC2833
}

.topbar__contact-strip {
    display: flex;
    align-items: center;
    gap: 24px;
    flex-wrap: wrap
}

.topbar__contact-item {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    line-height: 1.3;
    color: #3a3a3a;
    text-decoration: none;
    transition: color .14s cubic-bezier(0.4, 0, 1, 1)
}

.topbar__contact-item:hover {
    color: #DC2833
}

.topbar__contact-item:focus {
    outline: 2px solid #13BE66;
    outline-offset: 2px;
    animation: focus-fade-in .16s cubic-bezier(0.4, 0, 1, 1)
}

@keyframes focus-fade-in {
    from {
        outline-color: transparent
    }

    to {
        outline-color: #13BE66
    }
}

.topbar__contact-icon {
    width: 16px;
    height: 16px;
    fill: #FDA21F
}

.hd-box {
    background: #fff;
    position: relative;
    padding: 24px 0;
    box-shadow: 0 4px 14px -1px #dc28331a
}

.hd-box::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: repeating-linear-gradient(45deg, transparent, transparent 8px, #13be6605 8px, #13be6605 16px), repeating-linear-gradient(-45deg, transparent, transparent 8px, #fda21f05 8px, #fda21f05 16px);
    pointer-events: none;
    z-index: 1
}

.hd__limiter {
    max-width: 1140px;
    margin: 0 auto;
    padding: 0 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 24px;
    position: relative;
    z-index: 2
}

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

.brand-lockup__visual {
    width: 92px;
    height: 92px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    border: 2px solid #DC2833;
    border-radius: 22px;
    box-shadow: 0 4px 14px -1px #dc28331a inset 0 2px 4px #13be660f;
    padding: 8px;
    transition: transform .14s cubic-bezier(0.4, 0, 1, 1), box-shadow .14s cubic-bezier(0.4, 0, 1, 1)
}

.brand-lockup:hover .brand-lockup__visual {
    transform: translateY(-2px);
    box-shadow: 0 9px 52px -1px #dc283321 inset 0 2px 4px #13be660f
}

.brand-lockup:focus {
    outline: 2px solid #13BE66;
    outline-offset: 4px;
    animation: focus-fade-in .16s cubic-bezier(0.4, 0, 1, 1)
}

.brand-lockup__img {
    width: 100%;
    height: 100%;
    object-fit: contain
}

.brand-lockup__text-box {
    display: flex;
    flex-direction: column;
    gap: 4px
}

.brand-lockup__name {
    font-size: 26px;
    line-height: 1.1;
    font-weight: 700;
    color: #2a2a2a;
    font-family: 'Inconsolata', monospace;
    letter-spacing: -.01em
}

.brand-lockup__tagline {
    font-size: 14px;
    line-height: 1.3;
    color: #5a5a5a;
    letter-spacing: .04em;
    text-transform: uppercase
}

.hd-nav {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    margin-left: auto
}

.hd-nav__link {
    display: inline-block;
    padding: 16px 24px;
    font-size: 14px;
    line-height: 1.3;
    font-weight: 700;
    color: #3a3a3a;
    text-decoration: none;
    border-radius: 14px;
    background: linear-gradient(to right, #13BE66 0%, #13BE66 100%);
    background-size: 0 100%;
    background-repeat: no-repeat;
    background-position: left center;
    transition: background-size .16s cubic-bezier(0.4, 0, 1, 1), color .16s cubic-bezier(0.4, 0, 1, 1), box-shadow .14s cubic-bezier(0.4, 0, 1, 1);
    position: relative;
    letter-spacing: .02em
}

.hd-nav__link:hover {
    background-size: 100% 100%;
    color: #fff;
    box-shadow: 0 3px 6px -1px #13be660d
}

.hd-nav__link:focus {
    outline: 2px solid #FDA21F;
    outline-offset: 2px;
    animation: focus-fade-in .16s cubic-bezier(0.4, 0, 1, 1)
}

@media (max-width: 1024px) {
    .hd__limiter {
        flex-direction: column;
        align-items: flex-start
    }

    .hd-nav {
        width: 100%;
        margin-left: 0;
        justify-content: flex-start
    }
}

@media (max-width: 640px) {
    .brand-lockup__visual {
        width: 72px;
        height: 72px
    }

    .brand-lockup__name {
        font-size: 26px
    }

    .brand-lockup__tagline {
        font-size: 14px
    }

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

    .topbar__contact-strip {
        flex-direction: column;
        align-items: flex-start;
        gap: 8px
    }
}

.ftr-box {
    background: linear-gradient(135deg, #2a2a2a 0%, #1a1a1a 100%);
    color: #e0e0e0;
    padding: 48px 0 24px;
    position: relative;
    overflow: hidden
}

.ftr-box::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 200%;
    height: 1px;
    background: linear-gradient(to right, transparent 0%, #DC2833 20%, #13BE66 50%, #FDA21F 80%, transparent 100%)
}

.ftr-box::after {
    content: 'Connecting Learners Worldwide';
    position: absolute;
    bottom: 24px;
    right: 24px;
    font-family: 'Inconsolata', monospace;
    font-size: 66px;
    line-height: 1.1;
    font-weight: 700;
    color: #dc28330a;
    pointer-events: none;
    white-space: nowrap;
    letter-spacing: -.02em;
    transform: rotate(-2deg)
}

.ftr__limiter {
    max-width: 1140px;
    margin: 0 auto;
    padding: 0 24px;
    position: relative;
    z-index: 2
}

.ftr__util-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 24px;
    padding-bottom: 24px;
    margin-bottom: 24px;
    border-bottom: 1px solid #ffffff14
}

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

.ftr__brand-visual {
    width: 88px;
    height: 88px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    border: 3px solid #13BE66;
    border-radius: 22px;
    box-shadow: 0 9px 52px -1px #13be6621 inset 0 2px 6px #dc283314;
    padding: 8px;
    transition: transform .14s cubic-bezier(0.4, 0, 1, 1), box-shadow .14s cubic-bezier(0.4, 0, 1, 1)
}

.ftr__brand-mark:hover .ftr__brand-visual {
    transform: translateY(-2px);
    box-shadow: 0 9px 52px -1px #13be662e inset 0 2px 6px #dc283314
}

.ftr__brand-mark:focus {
    outline: 2px solid #FDA21F;
    outline-offset: 4px;
    animation: focus-fade-in .16s cubic-bezier(0.4, 0, 1, 1)
}

.ftr__brand-img {
    width: 100%;
    height: 100%;
    object-fit: contain
}

.ftr__brand-text {
    font-size: 26px;
    line-height: 1.1;
    font-weight: 700;
    color: #fff;
    font-family: 'Inconsolata', monospace
}

.ftr__social-strip {
    display: flex;
    align-items: center;
    gap: 16px
}

.ftr__social-link {
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #ffffff0f;
    border: 1px solid #ffffff1f;
    border-radius: 14px;
    text-decoration: none;
    transition: background .14s cubic-bezier(0.4, 0, 1, 1), border-color .14s cubic-bezier(0.4, 0, 1, 1), transform .14s cubic-bezier(0.4, 0, 1, 1)
}

.ftr__social-link:hover {
    background: #13be661f;
    border-color: #13BE66;
    transform: translateY(-2px)
}

.ftr__social-link:focus {
    outline: 2px solid #FDA21F;
    outline-offset: 2px;
    animation: focus-fade-in .16s cubic-bezier(0.4, 0, 1, 1)
}

.ftr__social-icon {
    width: 20px;
    height: 20px;
    fill: #13BE66
}

.ftr__main-row {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 48px;
    margin-bottom: 48px
}

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

.ftr__col-heading {
    font-size: 14px;
    line-height: 1.3;
    font-weight: 700;
    color: #FDA21F;
    text-transform: uppercase;
    letter-spacing: .08em;
    margin-bottom: 8px
}

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

.ftr__link-item {
    display: block
}

.ftr__link {
    display: inline-block;
    font-size: 14px;
    line-height: 1.5;
    color: silver;
    text-decoration: none;
    transition: color .14s cubic-bezier(0.4, 0, 1, 1), transform .14s cubic-bezier(0.4, 0, 1, 1);
    position: relative;
    padding-left: 16px
}

.ftr__link::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 6px;
    height: 6px;
    background: #DC2833;
    border-radius: 48px;
    transition: width .14s cubic-bezier(0.4, 0, 1, 1)
}

.ftr__link:hover {
    color: #fff;
    transform: translateX(4px)
}

.ftr__link:hover::before {
    width: 10px
}

.ftr__link:focus {
    outline: 2px solid #13BE66;
    outline-offset: 2px;
    animation: focus-fade-in .16s cubic-bezier(0.4, 0, 1, 1)
}

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

.ftr__address-line {
    font-size: 14px;
    line-height: 1.5;
    color: silver;
    font-style: normal
}

.ftr__address-link {
    color: #13BE66;
    text-decoration: none;
    transition: color .14s cubic-bezier(0.4, 0, 1, 1)
}

.ftr__address-link:hover {
    color: #FDA21F
}

.ftr__address-link:focus {
    outline: 2px solid #DC2833;
    outline-offset: 2px;
    animation: focus-fade-in .16s cubic-bezier(0.4, 0, 1, 1)
}

.ftr__legal-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 24px;
    padding-top: 24px;
    border-top: 1px solid #ffffff14
}

.ftr__copyright {
    font-size: 14px;
    line-height: 1.3;
    color: #909090;
    font-family: 'Inconsolata', monospace
}

.ftr__legal-nav {
    display: flex;
    align-items: center;
    gap: 24px;
    flex-wrap: wrap
}

.ftr__legal-link {
    font-size: 14px;
    line-height: 1.3;
    color: #a0a0a0;
    text-decoration: none;
    transition: color .14s cubic-bezier(0.4, 0, 1, 1)
}

.ftr__legal-link:hover {
    color: #FDA21F
}

.ftr__legal-link:focus {
    outline: 2px solid #13BE66;
    outline-offset: 2px;
    animation: focus-fade-in .16s cubic-bezier(0.4, 0, 1, 1)
}

@media (max-width: 1024px) {
    .ftr__main-row {
        grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
        gap: 24px
    }
}

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

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

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

    .ftr-box::after {
        font-size: 36px;
        bottom: 16px;
        right: 16px
    }
}

.consent-card {
    position: fixed;
    top: 24px;
    right: 24px;
    width: 420px;
    max-width: calc(100vw - 48px);
    background: #fff;
    border: 2px solid #DC2833;
    border-radius: 22px;
    box-shadow: 0 9px 52px -1px #dc283321 0 4px 14px -1px #dc28331a;
    padding: 24px;
    z-index: 1500;
    display: none;
    opacity: 0;
    transform: translateY(-8px);
    transition: opacity .32s cubic-bezier(0.4, 0, 1, 1), transform .32s cubic-bezier(0.4, 0, 1, 1);
    box-sizing: border-box
}

.consent-card.is-visible {
    opacity: 1;
    transform: translateY(0)
}

.consent-card__heading {
    font-size: 26px;
    line-height: 1.3;
    font-weight: 700;
    color: #2a2a2a;
    margin: 0 0 16px;
    font-family: 'Inconsolata', monospace
}

.consent-card__desc {
    font-size: 14px;
    line-height: 1.5;
    color: #4a4a4a;
    margin: 0 0 24px
}

.consent-card__actions {
    display: flex;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
    margin-bottom: 16px
}

.consent-card__btn {
    display: inline-block;
    padding: 16px 24px;
    font-size: 14px;
    line-height: 1.3;
    font-weight: 700;
    font-family: 'Nunito', sans-serif;
    color: #fff;
    background: #DC2833;
    border: none;
    border-radius: 14px;
    cursor: pointer;
    text-decoration: none;
    transition: background .14s cubic-bezier(0.4, 0, 1, 1), box-shadow .14s cubic-bezier(0.4, 0, 1, 1), transform .14s cubic-bezier(0.4, 0, 1, 1)
}

.consent-card__btn:hover {
    background: #b81f28;
    box-shadow: 0 4px 14px -1px #dc28331a;
    transform: translateY(-1px)
}

.consent-card__btn:focus {
    outline: 2px solid #13BE66;
    outline-offset: 2px;
    animation: focus-fade-in .16s cubic-bezier(0.4, 0, 1, 1)
}

.consent-card__btn--secondary {
    background: #13BE66
}

.consent-card__btn--secondary:hover {
    background: #0fa055
}

.consent-card__toggle-link {
    display: inline-block;
    font-size: 14px;
    line-height: 1.3;
    color: #DC2833;
    text-decoration: underline;
    cursor: pointer;
    background: none;
    border: none;
    padding: 0;
    font-family: 'Nunito', sans-serif;
    transition: color .14s cubic-bezier(0.4, 0, 1, 1)
}

.consent-card__toggle-link:hover {
    color: #b81f28
}

.consent-card__toggle-link:focus {
    outline: 2px solid #FDA21F;
    outline-offset: 2px;
    animation: focus-fade-in .16s cubic-bezier(0.4, 0, 1, 1)
}

.consent-card__detail-view {
    display: none;
    margin-top: 24px;
    padding-top: 24px;
    border-top: 1px solid #dc28331f
}

.consent-card__detail-view.is-active {
    display: block
}

.consent-card__option-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 16px;
    padding: 16px;
    background: #13be660a;
    border: 1px solid #13be661f;
    border-radius: 14px
}

.consent-card__option-label {
    font-size: 14px;
    line-height: 1.3;
    color: #2a2a2a;
    font-weight: 700
}

.consent-card__checkbox {
    width: 20px;
    height: 20px;
    cursor: pointer;
    accent-color: #13BE66
}

.consent-card__sale-notice {
    margin-top: 24px;
    padding: 16px;
    background: #fda21f14;
    border: 1px solid #fda21f3d;
    border-radius: 14px
}

.consent-card__sale-heading {
    font-size: 14px;
    line-height: 1.3;
    font-weight: 700;
    color: #2a2a2a;
    margin: 0 0 8px
}

.consent-card__sale-desc {
    font-size: 14px;
    line-height: 1.5;
    color: #4a4a4a;
    margin: 0 0 16px
}

.consent-card__sale-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px
}

.consent-card__sale-label {
    font-size: 14px;
    line-height: 1.3;
    color: #2a2a2a;
    font-weight: 700
}

@media (max-width: 640px) {
    .consent-card {
        top: 16px;
        right: 16px;
        max-width: calc(100vw - 32px);
        padding: 16px
    }

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

    .consent-card__btn {
        width: 100%;
        text-align: center
    }
}

@media (max-width: 360px) {
    .consent-card {
        top: 8px;
        right: 8px;
        max-width: calc(100vw - 16px)
    }
}

.legal-area {
    max-width: 1140px;
    margin: 0 auto;
    padding: 48px 24px
}

.legal-area h1 {
    font-size: 50px;
    line-height: 1.1;
    margin-bottom: 48px;
    color: #1a1a1a
}

.legal-area h2 {
    font-size: 36px;
    line-height: 1.3;
    margin-top: 48px;
    margin-bottom: 24px;
    color: #2a2a2a
}

.legal-area h3 {
    font-size: 26px;
    line-height: 1.3;
    margin-top: 48px;
    margin-bottom: 24px;
    color: #3a3a3a
}

.legal-area h4 {
    font-size: 14px;
    line-height: 1.5;
    margin-top: 24px;
    margin-bottom: 16px;
    color: #4a4a4a;
    text-transform: uppercase;
    letter-spacing: .08em
}

.legal-area h5 {
    font-size: 14px;
    line-height: 1.5;
    margin-top: 24px;
    margin-bottom: 16px;
    color: #4a4a4a
}

.legal-area h6 {
    font-size: 14px;
    line-height: 1.5;
    margin-top: 24px;
    margin-bottom: 16px;
    color: #5a5a5a
}

.legal-area p {
    font-size: 14px;
    line-height: 1.7;
    margin-bottom: 16px;
    color: #2a2a2a
}

.legal-area ul,
.legal-area ol {
    font-size: 14px;
    line-height: 1.7;
    margin-bottom: 24px;
    padding-left: 24px;
    color: #2a2a2a
}

.legal-area li {
    margin-bottom: 8px
}

.legal-area li:last-child {
    margin-bottom: 0
}

.legal-area strong,
.legal-area b {
    font-weight: 600;
    color: #1a1a1a
}

.legal-area em,
.legal-area i {
    font-style: italic
}

.legal-area a {
    color: #DC2833;
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 2px;
    transition: color .14s cubic-bezier(0.4, 0, 1, 1)
}

.legal-area a:hover {
    color: #b01f28
}

.legal-area table {
    width: 100%;
    border-collapse: collapse;
    margin-bottom: 48px;
    font-size: 14px;
    line-height: 1.5;
    border: 1px solid #d0d0d0;
    border-radius: 8px;
    overflow: hidden
}

.legal-area thead {
    background-color: #f5f5f5
}

.legal-area th {
    padding: 16px;
    text-align: left;
    font-weight: 600;
    color: #1a1a1a;
    border-bottom: 2px solid #d0d0d0
}

.legal-area td {
    padding: 16px;
    color: #2a2a2a;
    border-bottom: 1px solid #e5e5e5
}

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

.legal-area tbody tr:hover {
    background-color: #fafafa
}

@media (max-width: 1024px) {
    .legal-area {
        padding: 48px 16px
    }

    .legal-area h1 {
        font-size: 36px
    }

    .legal-area h2 {
        font-size: 26px
    }

    .legal-area h3 {
        font-size: 26px
    }
}

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

    .legal-area h1 {
        font-size: 26px;
        margin-bottom: 24px
    }

    .legal-area h2 {
        font-size: 26px;
        margin-top: 24px;
        margin-bottom: 16px
    }

    .legal-area h3 {
        font-size: 26px;
        margin-top: 24px;
        margin-bottom: 16px
    }

    .legal-area table {
        font-size: 14px
    }

    .legal-area th,
    .legal-area td {
        padding: 8px
    }
}

.qz {
    background: linear-gradient(172deg, #fff 0%, #dc283305 100%);
    position: relative;
    overflow-x: clip
}

.qz::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 340px;
    height: 340px;
    background-image: repeating-linear-gradient(45deg, transparent, transparent 16px, #dc283308 16px, #dc283308 18px), repeating-linear-gradient(-45deg, transparent, transparent 16px, #dc283308 16px, #dc283308 18px);
    opacity: .4;
    pointer-events: none;
    z-index: 1
}

.qz__ttl-wrp {
    max-width: 1140px;
    margin: 0 auto;
    display: flex;
    flex-direction: row;
    align-items: stretch;
    position: relative;
    border-bottom: 1px solid #dc28331f
}

.qz__ttl-cntnt {
    flex: 1;
    padding: 48px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: relative;
    z-index: 2
}

.qz__ttl-hd {
    font-size: 50px;
    line-height: 1.1;
    margin: 0 0 24px;
    color: #1a1a1a;
    font-weight: 700
}

.qz__ttl-hd span {
    color: #DC2833
}

.qz__ttl-txt {
    font-size: 14px;
    line-height: 1.5;
    color: #333;
    margin: 0
}

.qz__ttl-img-wrp {
    flex: 1;
    position: relative;
    overflow: hidden
}

.qz__ttl-img-wrp::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, #dc28332e 0%, transparent 60%);
    pointer-events: none;
    z-index: 1
}

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

@media (max-width: 1024px) {
    .qz__ttl-wrp {
        flex-direction: column
    }

    .qz__ttl-cntnt {
        padding: 48px 24px
    }

    .qz__ttl-img-wrp {
        min-height: 320px
    }

    .qz__ttl-hd {
        font-size: 36px
    }
}

@media (max-width: 640px) {
    .qz__ttl-cntnt {
        padding: 24px 16px
    }

    .qz__ttl-hd {
        font-size: 26px;
        margin: 0 0 16px
    }

    .qz__ttl-img-wrp {
        min-height: 240px
    }
}

.qz__dvdr {
    max-width: 1140px;
    margin: 0 auto;
    height: 24px;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 16px;
    position: relative
}

.qz__dvdr::before,
.qz__dvdr::after {
    content: '';
    width: 8px;
    height: 8px;
    background: #DC2833;
    transform: rotate(45deg)
}

.qz__dvdr span {
    width: 8px;
    height: 8px;
    background: #DC2833;
    transform: rotate(45deg)
}

.qz__qst-sctn {
    max-width: 1140px;
    margin: 0 auto;
    padding: 48px 24px;
    position: relative;
    z-index: 2
}

.qz__qst-hdr {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 16px;
    margin: 0 0 48px
}

.qz__qst-shp {
    width: 48px;
    height: 48px;
    background: linear-gradient(135deg, #DC2833 0%, #FDA21F 100%);
    border-radius: 8px;
    flex-shrink: 0
}

.qz__qst-hdng {
    font-size: 36px;
    line-height: 1.3;
    margin: 0;
    color: #1a1a1a;
    font-weight: 700
}

.qz__qst-grd {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 24px
}

.qz__qst-crd {
    background: #fff;
    border: 1px solid #dc283314;
    border-radius: 14px;
    padding: 24px;
    position: relative;
    box-shadow: 0 3px 6px -1px #dc28330d 0 4px 14px -1px #dc28331a 0 9px 52px -1px #dc283321;
    transition: transform .15s cubic-bezier(0.4, 0, 1, 1), box-shadow .15s cubic-bezier(0.4, 0, 1, 1), border-color .12s cubic-bezier(0.4, 0, 1, 1);
    cursor: pointer
}

.qz__qst-crd:hover {
    transform: translateY(-4px);
    box-shadow: 0 6px 12px -1px #dc283314 0 8px 20px -1px #dc283324 0 12px 60px -1px #dc28332e;
    border-color: #dc283338
}

.qz__qst-crd input[type="radio"] {
    position: absolute;
    opacity: 0;
    pointer-events: none
}

.qz__qst-crd input[type="radio"]:checked+.qz__qst-crd-cntnt {
    border-color: #DC2833
}

.qz__qst-crd input[type="radio"]:checked+.qz__qst-crd-cntnt::before {
    opacity: 1;
    transform: scale(1)
}

.qz__qst-crd-cntnt {
    position: relative;
    border: 2px solid transparent;
    border-radius: 8px;
    padding: 16px;
    transition: border-color .14s cubic-bezier(0.4, 0, 1, 1)
}

.qz__qst-crd-cntnt::before {
    content: '';
    position: absolute;
    top: 8px;
    right: 8px;
    width: 20px;
    height: 20px;
    background: #DC2833;
    border-radius: 34px;
    opacity: 0;
    transform: scale(0.7);
    transition: opacity .16s cubic-bezier(0.4, 0, 1, 1), transform .16s cubic-bezier(0.4, 0, 1, 1)
}

.qz__qst-crd-cntnt::after {
    content: '';
    position: absolute;
    top: 13px;
    right: 13px;
    width: 6px;
    height: 10px;
    border-right: 2px solid #fff;
    border-bottom: 2px solid #fff;
    transform: rotate(45deg);
    opacity: 0;
    transition: opacity .18s cubic-bezier(0.4, 0, 1, 1) .08s
}

.qz__qst-crd input[type="radio"]:checked+.qz__qst-crd-cntnt::after {
    opacity: 1
}

.qz__qst-crd-ttl {
    font-size: 14px;
    line-height: 1.5;
    margin: 0;
    color: #1a1a1a;
    font-weight: 600;
    padding-right: 32px
}

@media (max-width: 640px) {
    .qz__qst-sctn {
        padding: 24px 16px
    }

    .qz__qst-hdr {
        margin: 0 0 24px
    }

    .qz__qst-hdng {
        font-size: 26px
    }

    .qz__qst-grd {
        grid-template-columns: 1fr
    }
}

.qz__rslt-sctn {
    background: #fff;
    position: relative
}

.qz__rslt-innr {
    max-width: 1140px;
    margin: 0 auto;
    padding: 48px 24px;
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 48px;
    align-items: start
}

.qz__rslt-mn {
    position: relative
}

.qz__rslt-mn::before {
    content: '';
    position: absolute;
    top: -24px;
    left: -24px;
    width: 120px;
    height: 2px;
    background: linear-gradient(90deg, #DC2833 0%, #FDA21F 100%)
}

.qz__rslt-hdng {
    font-size: 36px;
    line-height: 1.3;
    margin: 0 0 24px;
    color: #1a1a1a;
    font-weight: 700
}

.qz__rslt-txt {
    font-size: 14px;
    line-height: 1.7;
    color: #333;
    margin: 0 0 24px
}

.qz__rslt-txt:last-of-type {
    margin: 0
}

.qz__rslt-sd {
    background: linear-gradient(172deg, #fff 0%, #13be660a 100%);
    border: 1px solid #13be661f;
    border-radius: 22px;
    padding: 24px;
    position: sticky;
    top: 24px
}

.qz__rslt-sd-hdng {
    font-size: 14px;
    line-height: 1.3;
    margin: 0 0 16px;
    color: #1a1a1a;
    font-weight: 700;
    letter-spacing: .05em;
    text-transform: uppercase
}

.qz__rslt-sd-lst {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 16px
}

.qz__rslt-sd-itm {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 16px;
    padding: 16px;
    background: #fff;
    border-radius: 8px;
    border: 1px solid #13be6614;
    transition: transform .14s cubic-bezier(0.4, 0, 1, 1), border-color .12s cubic-bezier(0.4, 0, 1, 1)
}

.qz__rslt-sd-itm:hover {
    transform: translateX(4px);
    border-color: #13be663d
}

.qz__rslt-sd-icn {
    width: 40px;
    height: 40px;
    background: #13BE66;
    border-radius: 34px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 14px;
    font-weight: 700
}

.qz__rslt-sd-txt {
    font-size: 14px;
    line-height: 1.5;
    color: #333;
    margin: 0
}

@media (max-width: 1024px) {
    .qz__rslt-innr {
        grid-template-columns: 1fr;
        gap: 24px
    }

    .qz__rslt-sd {
        position: static
    }
}

@media (max-width: 640px) {
    .qz__rslt-sctn {
        padding: 24px 16px
    }

    .qz__rslt-innr {
        padding: 24px 16px
    }

    .qz__rslt-hdng {
        font-size: 26px
    }

    .qz__rslt-mn::before {
        left: 0
    }
}

.qz__prg-sctn {
    background: linear-gradient(0deg, #fda21f00 50%, #fda21f0f 50%);
    position: relative
}

.qz__prg-innr {
    max-width: 1140px;
    margin: 0 auto;
    padding: 48px 24px 48px 48px;
    position: relative
}

.qz__prg-hdr {
    margin: 0 0 48px;
    position: relative
}

.qz__prg-hdr::before {
    content: '';
    position: absolute;
    top: 50%;
    left: -48px;
    width: 24px;
    height: 24px;
    background: #FDA21F;
    transform: translateY(-50%) rotate(45deg)
}

.qz__prg-hdng {
    font-size: 36px;
    line-height: 1.3;
    margin: 0;
    color: #1a1a1a;
    font-weight: 700
}

.qz__prg-grd {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    position: relative
}

.qz__prg-crd {
    background: #fff;
    border-radius: 14px;
    padding: 24px;
    border: 1px solid #fda21f1f;
    position: relative;
    overflow: hidden;
    transition: transform .16s cubic-bezier(0.4, 0, 1, 1)
}

.qz__prg-crd::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent 0%, #fda21f0f 50%, transparent 100%);
    transition: left .18s cubic-bezier(0.4, 0, 1, 1)
}

.qz__prg-crd:hover::before {
    left: 100%
}

.qz__prg-crd:hover {
    transform: scale(1.02)
}

.qz__prg-crd:hover~.qz__prg-crd {
    opacity: .7
}

.qz__prg-crd-num {
    font-size: 66px;
    line-height: 1.1;
    color: #FDA21F;
    font-weight: 700;
    margin: 0 0 16px;
    position: relative;
    z-index: 1
}

.qz__prg-crd-ttl {
    font-size: 14px;
    line-height: 1.5;
    color: #1a1a1a;
    font-weight: 700;
    margin: 0 0 8px;
    position: relative;
    z-index: 1
}

.qz__prg-crd-txt {
    font-size: 14px;
    line-height: 1.7;
    color: #333;
    margin: 0;
    position: relative;
    z-index: 1
}

.qz__prg-nt {
    margin: 48px 0 0;
    padding: 24px;
    background: #fda21f14;
    border-left: 4px solid #FDA21F;
    border-radius: 8px;
    display: flex;
    flex-direction: row;
    gap: 24px
}

.qz__prg-nt-sd {
    flex-shrink: 0;
    width: 180px;
    font-size: 14px;
    line-height: 1.5;
    color: #666;
    font-weight: 600;
    letter-spacing: .03em
}

.qz__prg-nt-mn {
    flex: 1
}

.qz__prg-nt-txt {
    font-size: 14px;
    line-height: 1.7;
    color: #333;
    margin: 0
}

@media (max-width: 1024px) {
    .qz__prg-innr {
        padding: 48px 24px
    }

    .qz__prg-hdr::before {
        left: -24px
    }

    .qz__prg-grd {
        grid-template-columns: 1fr
    }

    .qz__prg-nt {
        flex-direction: column;
        gap: 16px
    }

    .qz__prg-nt-sd {
        width: auto
    }
}

@media (max-width: 640px) {
    .qz__prg-innr {
        padding: 24px 16px
    }

    .qz__prg-hdr {
        margin: 0 0 24px
    }

    .qz__prg-hdr::before {
        display: none
    }

    .qz__prg-hdng {
        font-size: 26px
    }

    .qz__prg-crd-num {
        font-size: 50px
    }

    .qz__prg-nt {
        margin: 24px 0 0
    }
}

@keyframes qz-clr-swp {
    0% {
        background-position: -200% center
    }

    100% {
        background-position: 200% center
    }
}

.qz__ttl-hd span {
    background: linear-gradient(90deg, #DC2833 0%, #FDA21F 50%, #DC2833 100%);
    background-size: 200% 100%;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    animation: qz-clr-swp 2.4s cubic-bezier(0.4, 0, 1, 1) infinite
}

.abt {
    background: #fff;
    color: #1a1a1a;
    overflow-x: clip
}

.abt__hero {
    display: grid;
    grid-template-columns: 1fr 1fr;
    min-height: 520px;
    position: relative
}

.abt__hero-left {
    background: linear-gradient(157deg, #DC2833 0%, #dc2833d9 100%);
    padding: 96px 48px 48px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    position: relative;
    overflow: hidden
}

.abt__hero-right {
    background: linear-gradient(157deg, #13BE66 0%, #13be66d9 100%);
    padding: 96px 48px 48px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    position: relative;
    overflow: hidden
}

.abt__pattern-dot {
    position: absolute;
    width: 6px;
    height: 6px;
    background: #ffffff26;
    border-radius: 50%
}

.abt__hero-left .abt__pattern-dot:nth-child(1) {
    top: 24px;
    left: 24px
}

.abt__hero-left .abt__pattern-dot:nth-child(2) {
    top: 24px;
    left: 48px
}

.abt__hero-left .abt__pattern-dot:nth-child(3) {
    top: 24px;
    left: 72px
}

.abt__hero-left .abt__pattern-dot:nth-child(4) {
    top: 48px;
    left: 24px
}

.abt__hero-left .abt__pattern-dot:nth-child(5) {
    top: 48px;
    left: 48px
}

.abt__hero-left .abt__pattern-dot:nth-child(6) {
    top: 48px;
    left: 72px
}

.abt__hero-left .abt__pattern-dot:nth-child(7) {
    bottom: 24px;
    right: 24px
}

.abt__hero-left .abt__pattern-dot:nth-child(8) {
    bottom: 24px;
    right: 48px
}

.abt__hero-left .abt__pattern-dot:nth-child(9) {
    bottom: 48px;
    right: 24px
}

.abt__hero-right .abt__pattern-dot:nth-child(1) {
    top: 24px;
    right: 24px
}

.abt__hero-right .abt__pattern-dot:nth-child(2) {
    top: 24px;
    right: 48px
}

.abt__hero-right .abt__pattern-dot:nth-child(3) {
    top: 48px;
    right: 24px
}

.abt__hero-right .abt__pattern-dot:nth-child(4) {
    bottom: 24px;
    left: 24px
}

.abt__hero-right .abt__pattern-dot:nth-child(5) {
    bottom: 24px;
    left: 48px
}

.abt__hero-right .abt__pattern-dot:nth-child(6) {
    bottom: 48px;
    left: 24px
}

.abt__hero-h1 {
    font-size: 66px;
    line-height: 1.1;
    color: #fff;
    margin: 0;
    max-width: 520px;
    position: relative;
    z-index: 2;
    filter: blur(8px);
    animation: abt-clarify 1.2s cubic-bezier(0.4, 0, 1, 1) .15s forwards
}

@keyframes abt-clarify {
    to {
        filter: blur(0)
    }
}

.abt__hero-txt {
    font-size: 26px;
    line-height: 1.5;
    color: #fffffff2;
    margin: 0;
    max-width: 480px;
    position: relative;
    z-index: 2
}

.abt__divider-svg {
    width: 100%;
    height: 64px;
    display: block
}

.abt__story {
    background: #f4f4f4;
    padding: 48px 24px;
    position: relative
}

.abt__story-inner {
    max-width: 1140px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 280px 1fr;
    gap: 48px;
    align-items: flex-start
}

.abt__story-aside {
    background: #fff;
    padding: 24px;
    border-radius: 14px;
    border: 1px solid #e0e0e0;
    box-shadow: 0 3px 6px -1px #dc28330d 0 4px 14px -1px #dc28331a 0 9px 52px -1px #dc283321;
    position: sticky;
    top: 24px
}

.abt__aside-lbl {
    font-size: 14px;
    line-height: 1.3;
    color: #666;
    letter-spacing: .08em;
    text-transform: uppercase;
    margin: 0 0 8px
}

.abt__aside-val {
    font-size: 50px;
    line-height: 1.1;
    color: #DC2833;
    margin: 0;
    font-weight: 700
}

.abt__aside-cap {
    font-size: 14px;
    line-height: 1.5;
    color: #444;
    margin: 8px 0 0
}

.abt__story-main {
    display: flex;
    flex-direction: column;
    gap: 24px
}

.abt__story-h2 {
    font-size: 50px;
    line-height: 1.3;
    color: #1a1a1a;
    margin: 0 0 16px;
    display: flex;
    align-items: center;
    gap: 16px
}

.abt__story-h2::before {
    content: '';
    width: 14px;
    height: 14px;
    background: #13BE66;
    border-radius: 50%;
    flex-shrink: 0
}

.abt__story-p {
    font-size: 26px;
    line-height: 1.7;
    color: #333;
    margin: 0 0 24px
}

.abt__grid {
    background: #fff;
    padding: 48px 24px;
    position: relative
}

.abt__grid::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 48px solid transparent;
    border-right: 48px solid transparent;
    border-top: 32px solid #f4f4f4
}

.abt__grid-inner {
    max-width: 1140px;
    margin: 0 auto
}

.abt__grid-h2 {
    font-size: 50px;
    line-height: 1.3;
    color: #1a1a1a;
    margin: 0 0 48px;
    text-align: center
}

.abt__grid-layout {
    display: grid;
    grid-template-columns: 2fr 3fr;
    gap: 24px
}

.abt__grid-col {
    display: flex;
    flex-direction: column;
    gap: 24px
}

.abt__card {
    background: #fafafa;
    border: 1px solid #e5e5e5;
    border-radius: 14px;
    padding: 24px;
    transition: transform .14s cubic-bezier(0.4, 0, 1, 1), box-shadow .14s cubic-bezier(0.4, 0, 1, 1);
    position: relative;
    overflow: hidden
}

.abt__card:hover {
    transform: translateY(-4px);
    box-shadow: 0 9px 52px -1px #13be6621
}

.abt__card-h3 {
    font-size: 26px;
    line-height: 1.3;
    color: #1a1a1a;
    margin: 0 0 8px;
    display: flex;
    align-items: center;
    gap: 8px
}

.abt__card-h3::before {
    content: '';
    width: 8px;
    height: 8px;
    background: #FDA21F;
    transform: rotate(45deg);
    flex-shrink: 0
}

.abt__card-txt {
    font-size: 14px;
    line-height: 1.7;
    color: #555;
    margin: 0
}

.abt__card--img {
    padding: 0;
    position: relative;
    min-height: 240px
}

.abt__card-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    border-radius: 14px;
    border: 1px solid #e5e5e5;
    filter: blur(4px);
    transition: filter .16s cubic-bezier(0.4, 0, 1, 1)
}

.abt__card--img:hover .abt__card-img {
    filter: blur(0)
}

.abt__card-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: repeating-linear-gradient(45deg, transparent, transparent 10px, #dc28330d 10px, #dc28330d 20px);
    opacity: 0;
    transition: opacity .12s cubic-bezier(0.4, 0, 1, 1);
    pointer-events: none;
    border-radius: 14px
}

.abt__card--img:hover .abt__card-overlay {
    opacity: 1
}

.abt__team {
    background: linear-gradient(157deg, #dc283300 30%, #dc283314 100%), url(./background_gallery/members1.jpg) center/cover no-repeat;
    padding: 48px 24px;
    position: relative;
    filter: blur(6px);
    animation: abt-clarify-bg 1.4s cubic-bezier(0.4, 0, 1, 1) .3s forwards
}

@keyframes abt-clarify-bg {
    to {
        filter: blur(0)
    }
}

.abt__team::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #ffffffeb;
    z-index: 1
}

.abt__team-inner {
    max-width: 1140px;
    margin: 0 auto;
    position: relative;
    z-index: 2
}

.abt__team-h2 {
    font-size: 50px;
    line-height: 1.3;
    color: #1a1a1a;
    margin: 0 0 24px;
    display: flex;
    align-items: center;
    gap: 16px
}

.abt__team-h2::before {
    content: '';
    width: 18px;
    height: 18px;
    background: #DC2833;
    clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
    flex-shrink: 0
}

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

.abt__member {
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 8px;
    padding: 16px;
    text-align: center;
    transition: transform .12s cubic-bezier(0.4, 0, 1, 1), box-shadow .12s cubic-bezier(0.4, 0, 1, 1)
}

.abt__member:hover {
    transform: scale(1.03);
    box-shadow: 0 4px 14px -1px #dc28331a
}

.abt__member-h4 {
    font-size: 26px;
    line-height: 1.3;
    color: #1a1a1a;
    margin: 0 0 8px
}

.abt__member-role {
    font-size: 14px;
    line-height: 1.5;
    color: #13BE66;
    margin: 0
}

.abt__circles {
    position: absolute;
    width: 200px;
    height: 200px;
    top: 50%;
    right: 48px;
    transform: translateY(-50%);
    pointer-events: none;
    z-index: 1
}

.abt__circle {
    position: absolute;
    border-radius: 50%;
    border: 2px solid #dc28331f
}

.abt__circle:nth-child(1) {
    width: 120px;
    height: 120px;
    top: 0;
    left: 0;
    background: #dc28330d
}

.abt__circle:nth-child(2) {
    width: 90px;
    height: 90px;
    top: 30px;
    left: 60px;
    background: #13be660f;
    border-color: #13be661f
}

.abt__circle:nth-child(3) {
    width: 60px;
    height: 60px;
    top: 80px;
    left: 20px;
    background: #fda21f12;
    border-color: #fda21f1f
}

.abt__vals {
    background: #f9f9f9;
    padding: 48px 24px;
    position: relative
}

.abt__vals::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 48px solid transparent;
    border-right: 48px solid transparent;
    border-top: 32px solid #fff
}

.abt__vals-inner {
    max-width: 1140px;
    margin: 0 auto
}

.abt__vals-h2 {
    font-size: 50px;
    line-height: 1.3;
    color: #1a1a1a;
    margin: 0 0 48px;
    display: flex;
    align-items: center;
    gap: 16px
}

.abt__vals-h2::before {
    content: '';
    width: 16px;
    height: 16px;
    background: #13BE66;
    border-radius: 8px;
    flex-shrink: 0
}

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

.abt__val-card {
    background: #fff;
    border: 1px solid #e0e0e0;
    border-radius: 22px;
    padding: 24px;
    transition: border-color .14s cubic-bezier(0.4, 0, 1, 1);
    position: relative
}

.abt__val-card:hover {
    border-color: #DC2833
}

.abt__val-h3 {
    font-size: 26px;
    line-height: 1.3;
    color: #1a1a1a;
    margin: 0 0 16px
}

.abt__val-txt {
    font-size: 14px;
    line-height: 1.7;
    color: #555;
    margin: 0
}

.abt__val-num {
    position: absolute;
    top: 16px;
    right: 24px;
    font-size: 66px;
    line-height: 1;
    color: #dc283314;
    font-weight: 700;
    pointer-events: none
}

.abt__stat {
    background: linear-gradient(157deg, #13BE66 0%, #13be66e0 100%);
    padding: 48px 24px;
    position: relative;
    overflow: hidden
}

.abt__stat::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 0;
    border-left: 48px solid transparent;
    border-right: 48px solid transparent;
    border-top: 32px solid #f9f9f9
}

.abt__stat-inner {
    max-width: 1140px;
    margin: 0 auto;
    position: relative;
    z-index: 2
}

.abt__stat-wrap {
    background: #ffffff2e;
    border: 1px solid #ffffff4d;
    border-radius: 34px;
    padding: 24px;
    display: grid;
    grid-template-columns: 1fr 2fr;
    gap: 24px;
    align-items: center
}

.abt__stat-box {
    background: #fff;
    border-radius: 22px;
    padding: 24px;
    text-align: center;
    box-shadow: 0 4px 14px -1px #13be661a
}

.abt__stat-lbl {
    font-size: 14px;
    line-height: 1.3;
    color: #666;
    letter-spacing: .06em;
    text-transform: uppercase;
    margin: 0 0 8px
}

.abt__stat-big {
    font-size: 66px;
    line-height: 1.1;
    color: #13BE66;
    margin: 0;
    font-weight: 700
}

.abt__stat-txt {
    font-size: 26px;
    line-height: 1.7;
    color: #fff;
    margin: 0
}

@media (max-width: 1280px) {
    .abt__hero-h1 {
        font-size: 50px
    }

    .abt__hero-txt {
        font-size: 26px
    }

    .abt__story-h2,
    .abt__grid-h2,
    .abt__team-h2,
    .abt__vals-h2 {
        font-size: 36px
    }

    .abt__story-p,
    .abt__stat-txt {
        font-size: 26px
    }

    .abt__aside-val,
    .abt__stat-big {
        font-size: 50px
    }

    .abt__val-num {
        font-size: 50px
    }
}

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

    .abt__hero-left,
    .abt__hero-right {
        padding: 48px 24px
    }

    .abt__story-inner {
        grid-template-columns: 1fr;
        gap: 24px
    }

    .abt__story-aside {
        position: static
    }

    .abt__grid-layout {
        grid-template-columns: 1fr
    }

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

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

    .abt__stat-wrap {
        grid-template-columns: 1fr
    }

    .abt__circles {
        display: none
    }
}

@media (max-width: 640px) {
    .abt__hero-h1 {
        font-size: 36px
    }

    .abt__hero-txt {
        font-size: 14px
    }

    .abt__story-h2,
    .abt__grid-h2,
    .abt__team-h2,
    .abt__vals-h2 {
        font-size: 26px
    }

    .abt__story-p,
    .abt__stat-txt {
        font-size: 14px
    }

    .abt__card-h3,
    .abt__member-h4,
    .abt__val-h3 {
        font-size: 14px
    }

    .abt__aside-val,
    .abt__stat-big {
        font-size: 36px
    }

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

    .abt__val-num {
        font-size: 36px
    }
}

@media (max-width: 360px) {

    .abt__hero-left,
    .abt__hero-right {
        padding: 24px 16px
    }

    .abt__story,
    .abt__grid,
    .abt__team,
    .abt__vals,
    .abt__stat {
        padding: 24px 16px
    }
}

.prm {
    background: #fff;
    color: #1a1a1a;
    line-height: 1.5
}

.prm__ttl-wrp {
    max-width: 1140px;
    margin: 0 auto;
    padding: 48px 16px;
    display: flex;
    flex-direction: row;
    gap: 48px;
    align-items: center;
    position: relative;
    border-bottom: 1px solid #DC2833
}

.prm__ttl-lft {
    flex: 1 1 70%
}

.prm__ttl-hdg {
    font-size: 66px;
    line-height: 1.1;
    color: #0d0d0d;
    margin: 0 0 24px
}

.prm__ttl-txt {
    font-size: 26px;
    line-height: 1.5;
    color: #3a3a3a;
    margin: 0
}

.prm__ttl-rgt {
    flex: 0 0 280px;
    position: relative;
    height: 360px;
    border-radius: 22px;
    overflow: hidden
}

.prm__ttl-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    border: 1px solid #e8e8e8
}

.prm__ttl-ovr {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, #dc28334d 0%, transparent 60%);
    pointer-events: none
}

.prm__sprt {
    max-width: 1140px;
    margin: 0 auto;
    padding: 48px 16px;
    background: linear-gradient(157deg, #dc283308 0%, transparent 45%, #13be6608 100%)
}

.prm__sprt-hdr {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 16px;
    margin: 0 0 24px
}

.prm__sprt-shp {
    width: 18px;
    height: 18px;
    background: #DC2833;
    clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
    flex-shrink: 0
}

.prm__sprt-hdg {
    font-size: 50px;
    line-height: 1.1;
    color: #0d0d0d;
    margin: 0
}

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

.prm__sprt-crd {
    background: #fff;
    padding: 24px;
    border-radius: 14px;
    box-shadow: 0 3px 6px -1px #dc28330d 0 4px 14px -1px #dc28331a 0 9px 52px -1px #dc283321;
    border: 1px solid #f2f2f2;
    opacity: 0;
    animation: prm-fade-in .16s cubic-bezier(0.4, 0, 1, 1) forwards
}

.prm__sprt-crd:nth-child(1) {
    animation-delay: .1s
}

.prm__sprt-crd:nth-child(2) {
    animation-delay: .2s
}

.prm__sprt-crd:nth-child(3) {
    animation-delay: .3s
}

@keyframes prm-fade-in {
    to {
        opacity: 1
    }
}

.prm__sprt-crd-icn {
    width: 42px;
    height: 42px;
    margin: 0 0 16px;
    fill: #13BE66
}

.prm__sprt-crd-ttl {
    font-size: 26px;
    line-height: 1.3;
    color: #0d0d0d;
    margin: 0 0 8px
}

.prm__sprt-crd-txt {
    font-size: 14px;
    line-height: 1.7;
    color: #4a4a4a;
    margin: 0;
    letter-spacing: .02em
}

.prm__avlb {
    background: #DC2833;
    padding: 48px 16px
}

.prm__avlb-cntr {
    max-width: 1140px;
    margin: 0 auto
}

.prm__avlb-hdr {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 16px;
    margin: 0 0 48px
}

.prm__avlb-shp {
    width: 18px;
    height: 18px;
    background: #fff;
    clip-path: polygon(30% 0%, 70% 0%, 100% 30%, 100% 70%, 70% 100%, 30% 100%, 0% 70%, 0% 30%);
    flex-shrink: 0
}

.prm__avlb-hdg {
    font-size: 50px;
    line-height: 1.1;
    color: #fff;
    margin: 0
}

.prm__avlb-grd {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 48px
}

.prm__avlb-lft {
    display: flex;
    flex-direction: column;
    gap: 24px
}

.prm__avlb-itm {
    background: #fffffff2;
    padding: 24px;
    border-radius: 14px;
    border: 1px solid #ffffff4d
}

.prm__avlb-itm-hdg {
    font-size: 26px;
    line-height: 1.3;
    color: #0d0d0d;
    margin: 0 0 8px
}

.prm__avlb-itm-txt {
    font-size: 14px;
    line-height: 1.7;
    color: #3a3a3a;
    margin: 0
}

.prm__avlb-rgt {
    position: relative
}

.prm__avlb-img-wrp {
    position: sticky;
    top: 48px;
    border-radius: 22px;
    overflow: hidden;
    border: 1px solid #ffffff4d
}

.prm__avlb-img {
    width: 100%;
    height: 520px;
    object-fit: cover;
    display: block
}

.prm__hst {
    max-width: 1140px;
    margin: 0 auto;
    padding: 48px 16px
}

.prm__hst-hdr {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 16px;
    margin: 0 0 24px
}

.prm__hst-shp {
    width: 18px;
    height: 18px;
    background: #FDA21F;
    border-radius: 50%;
    flex-shrink: 0
}

.prm__hst-hdg {
    font-size: 50px;
    line-height: 1.1;
    color: #0d0d0d;
    margin: 0
}

.prm__hst-lyt {
    display: grid;
    grid-template-columns: 320px 1fr;
    gap: 48px;
    align-items: start
}

.prm__hst-sdb {
    background: #f7f7f7;
    padding: 24px;
    border-radius: 14px;
    border-left: 4px solid #FDA21F
}

.prm__hst-sdb-lbl {
    font-size: 14px;
    line-height: 1.3;
    color: #6a6a6a;
    margin: 0 0 8px;
    letter-spacing: .06em;
    text-transform: uppercase
}

.prm__hst-sdb-txt {
    font-size: 14px;
    line-height: 1.7;
    color: #2a2a2a;
    margin: 0
}

.prm__hst-mn {
    display: flex;
    flex-direction: column;
    gap: 24px
}

.prm__hst-blk {
    background: #fff;
    padding: 24px;
    border-radius: 14px;
    border: 1px solid #e8e8e8
}

.prm__hst-blk-hdg {
    font-size: 26px;
    line-height: 1.3;
    color: #0d0d0d;
    margin: 0 0 16px
}

.prm__hst-blk-txt {
    font-size: 14px;
    line-height: 1.7;
    color: #4a4a4a;
    margin: 0
}

.prm__gap {
    background: linear-gradient(223deg, transparent 0%, #13be660a 50%, transparent 100%);
    padding: 48px 16px
}

.prm__gap-cntr {
    max-width: 1140px;
    margin: 0 auto
}

.prm__gap-hdr {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 16px;
    margin: 0 0 48px
}

.prm__gap-shp {
    width: 18px;
    height: 18px;
    background: #13BE66;
    clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
    flex-shrink: 0
}

.prm__gap-hdg {
    font-size: 50px;
    line-height: 1.1;
    color: #0d0d0d;
    margin: 0
}

.prm__gap-cmp {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    margin: 0 0 48px
}

.prm__gap-col {
    background: #fff;
    border-radius: 14px;
    overflow: hidden;
    border: 1px solid #e8e8e8
}

.prm__gap-col-hd {
    padding: 24px;
    text-align: center;
    border-bottom: 1px solid #e8e8e8
}

.prm__gap-col-hdg {
    font-size: 26px;
    line-height: 1.3;
    color: #0d0d0d;
    margin: 0 0 8px
}

.prm__gap-col-prc {
    font-size: 36px;
    line-height: 1.1;
    color: #DC2833;
    margin: 0
}

.prm__gap-col-bd {
    padding: 24px
}

.prm__gap-col-rw {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    padding: 16px 0;
    border-bottom: 1px solid #f2f2f2
}

.prm__gap-col-rw:last-child {
    border-bottom: none
}

.prm__gap-col-lbl {
    font-size: 14px;
    line-height: 1.5;
    color: #4a4a4a;
    margin: 0
}

.prm__gap-col-val {
    font-size: 14px;
    line-height: 1.5;
    color: #0d0d0d;
    margin: 0;
    font-weight: 600
}

.prm__gap-pth {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 24px
}

.prm__gap-pth-icn {
    width: 56px;
    height: 56px;
    fill: #13BE66
}

.prm__gap-pth-ln {
    width: 120px;
    height: 2px;
    background: repeating-linear-gradient(to right, #13BE66 0px, #13BE66 8px, transparent 8px, transparent 16px)
}

.prm__rvw {
    max-width: 1140px;
    margin: 0 auto;
    padding: 48px 16px
}

.prm__rvw-hdr {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 16px;
    margin: 0 0 48px
}

.prm__rvw-shp {
    width: 18px;
    height: 18px;
    background: #DC2833;
    transform: rotate(45deg);
    flex-shrink: 0
}

.prm__rvw-hdg {
    font-size: 50px;
    line-height: 1.1;
    color: #0d0d0d;
    margin: 0
}

.prm__rvw-grd {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 48px
}

.prm__rvw-itm {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 24px;
    background: #fff;
    padding: 24px;
    border-radius: 14px;
    border: 1px solid #e8e8e8;
    box-shadow: 0 3px 6px -1px #13be660d 0 4px 14px -1px #13be661a 0 9px 52px -1px #13be6621;
    transition: box-shadow .14s cubic-bezier(0.4, 0, 1, 1)
}

.prm__rvw-itm:hover {
    box-shadow: 0 4px 14px -1px #13be661a 0 9px 52px -1px #13be6621 0 14px 72px -1px #13be6629
}

.prm__rvw-txt {
    display: flex;
    flex-direction: column;
    justify-content: center
}

.prm__rvw-nm {
    font-size: 26px;
    line-height: 1.3;
    color: #0d0d0d;
    margin: 0 0 8px
}

.prm__rvw-qot {
    font-size: 14px;
    line-height: 1.7;
    color: #4a4a4a;
    margin: 0 0 16px
}

.prm__rvw-rslt {
    font-size: 14px;
    line-height: 1.5;
    color: #13BE66;
    margin: 0;
    font-weight: 600
}

.prm__rvw-img-wrp {
    border-radius: 14px;
    overflow: hidden;
    border: 1px solid #e8e8e8;
    position: relative
}

.prm__rvw-img {
    width: 100%;
    height: 280px;
    object-fit: cover;
    display: block;
    transition: filter .16s cubic-bezier(0.4, 0, 1, 1)
}

.prm__rvw-itm:hover .prm__rvw-img {
    filter: brightness(0.92)
}

.prm__rvw-img-wrp::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    box-shadow: inset 0 0 60px 20px #0000;
    pointer-events: none;
    transition: box-shadow .16s cubic-bezier(0.4, 0, 1, 1)
}

.prm__rvw-itm:hover .prm__rvw-img-wrp::after {
    box-shadow: inset 0 0 60px 20px #0000002e
}

@media (max-width: 1280px) {
    .prm__ttl-hdg {
        font-size: clamp(50px, 5.5vw, 66px)
    }

    .prm__ttl-txt {
        font-size: clamp(20px, 2.2vw, 26px)
    }

    .prm__sprt-hdg,
    .prm__avlb-hdg,
    .prm__hst-hdg,
    .prm__gap-hdg,
    .prm__rvw-hdg {
        font-size: clamp(36px, 4.2vw, 50px)
    }

    .prm__sprt-crd-ttl,
    .prm__avlb-itm-hdg,
    .prm__hst-blk-hdg,
    .prm__gap-col-hdg,
    .prm__rvw-nm {
        font-size: clamp(20px, 2.2vw, 26px)
    }
}

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

    .prm__ttl-lft {
        flex: 1 1 100%
    }

    .prm__ttl-rgt {
        flex: 0 0 auto;
        width: 100%;
        max-width: 480px
    }

    .prm__sprt-grd {
        grid-template-columns: 1fr
    }

    .prm__avlb-grd {
        grid-template-columns: 1fr
    }

    .prm__hst-lyt {
        grid-template-columns: 1fr
    }

    .prm__hst-sdb {
        max-width: 480px
    }

    .prm__gap-cmp {
        grid-template-columns: 1fr
    }

    .prm__gap-pth {
        flex-direction: column
    }

    .prm__gap-pth-ln {
        width: 2px;
        height: 60px;
        background: repeating-linear-gradient(to bottom, #13BE66 0px, #13BE66 8px, transparent 8px, transparent 16px)
    }

    .prm__rvw-grd {
        grid-template-columns: 1fr
    }

    .prm__rvw-itm {
        grid-template-columns: 1fr
    }
}

@media (max-width: 640px) {

    .prm__ttl-wrp,
    .prm__sprt,
    .prm__avlb,
    .prm__hst,
    .prm__gap,
    .prm__rvw {
        padding: 24px 16px
    }

    .prm__ttl-hdg {
        font-size: clamp(36px, 9vw, 50px)
    }

    .prm__ttl-txt {
        font-size: clamp(16px, 4vw, 20px)
    }

    .prm__sprt-hdg,
    .prm__avlb-hdg,
    .prm__hst-hdg,
    .prm__gap-hdg,
    .prm__rvw-hdg {
        font-size: clamp(26px, 7vw, 36px)
    }

    .prm__avlb-cntr {
        padding: 0
    }

    .prm__gap-cntr {
        padding: 0
    }

    .prm__gap-hdr {
        margin: 0 0 24px
    }

    .prm__gap-cmp {
        margin: 0 0 24px
    }

    .prm__rvw-hdr {
        margin: 0 0 24px
    }
}

@media (max-width: 360px) {

    .prm__sprt-crd,
    .prm__avlb-itm,
    .prm__hst-sdb,
    .prm__hst-blk,
    .prm__gap-col,
    .prm__rvw-itm {
        padding: 16px
    }
}

.success-page {
    background: linear-gradient(173deg, #fff 0%, #dc283308 100%);
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 48px 16px
}

.success-page__container {
    max-width: 1140px;
    width: 100%;
    margin: 0 auto
}

.success-page__content {
    background: #fff;
    border-radius: 22px;
    padding: 48px 24px;
    box-shadow: 0 4px 14px -1px #dc28331a 0 9px 52px -1px #dc283321;
    text-align: center;
    max-width: 640px;
    margin: 0 auto
}

.success-page__icon {
    width: 84px;
    height: 84px;
    margin: 0 auto 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(173deg, #13be661f 0%, #13be660a 100%);
    border-radius: 999px;
    position: relative
}

.success-page__icon::before {
    content: '';
    width: 48px;
    height: 48px;
    background: #13BE66;
    border-radius: 999px;
    display: flex;
    align-items: center;
    justify-content: center
}

.success-page__icon::after {
    content: '';
    position: absolute;
    width: 18px;
    height: 10px;
    border-left: 3px solid #fff;
    border-bottom: 3px solid #fff;
    transform: rotate(-45deg) translate(2px, -2px)
}

.success-page__title {
    font-size: 50px;
    line-height: 1.1;
    color: #1a1a1a;
    margin: 0 0 16px
}

.success-page__message {
    font-size: 26px;
    line-height: 1.5;
    color: #4a4a4a;
    margin: 0 0 48px
}

.success-page__details {
    background: linear-gradient(173deg, #fda21f14 0%, #fda21f05 100%);
    border-radius: 14px;
    padding: 24px;
    margin: 0 0 48px;
    text-align: left
}

.success-page__details-title {
    font-size: 26px;
    line-height: 1.3;
    color: #1a1a1a;
    margin: 0 0 16px;
    display: flex;
    align-items: center;
    gap: 16px
}

.success-page__details-title::before {
    content: '';
    width: 8px;
    height: 8px;
    background: #FDA21F;
    border-radius: 999px;
    flex-shrink: 0
}

.success-page__details-text {
    font-size: 14px;
    line-height: 1.7;
    color: #4a4a4a;
    margin: 0
}

.success-page__actions {
    display: flex;
    flex-direction: column;
    gap: 16px;
    align-items: center
}

.success-page__btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 16px 48px;
    font-size: 14px;
    line-height: 1.3;
    text-decoration: none;
    border-radius: 8px;
    cursor: pointer;
    border: none;
    position: relative;
    overflow: hidden;
    transition: transform .14s cubic-bezier(0.4, 0, 1, 1);
    width: 100%;
    max-width: 340px
}

.success-page__btn:hover {
    transform: translateY(-2px)
}

.success-page__btn:active {
    transform: translateY(0)
}

.success-page__btn--primary {
    background: #DC2833;
    color: #fff
}

.success-page__btn--primary::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: #0000001a;
    transition: left .16s cubic-bezier(0.4, 0, 1, 1)
}

.success-page__btn--primary:hover::before {
    left: 0
}

.success-page__btn--secondary {
    background: transparent;
    color: #DC2833;
    border: 2px solid #DC2833
}

.success-page__footer {
    margin: 48px 0 0;
    padding: 24px 0 0;
    border-top: 1px solid #dc283326
}

.success-page__footer-text {
    font-size: 14px;
    line-height: 1.7;
    color: #6a6a6a;
    margin: 0 0 8px
}

.success-page__contact {
    font-size: 14px;
    line-height: 1.7;
    color: #DC2833;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: opacity .12s cubic-bezier(0.4, 0, 1, 1)
}

.success-page__contact:hover {
    opacity: .7
}

.success-page__contact::before {
    content: '';
    width: 16px;
    height: 16px;
    background: currentColor;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2'%3E%3Cpath d='M3 8l7.89 5.26a2 2 0 002.22 0L21 8M5 19h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v10a2 2 0 002 2z'/%3E%3C/svg%3E") center / contain no-repeat;
    flex-shrink: 0
}

@media (min-width: 640px) {
    .success-page__content {
        padding: 48px
    }

    .success-page__actions {
        flex-direction: row;
        justify-content: center
    }

    .success-page__btn {
        width: auto
    }
}

@media (min-width: 1024px) {
    .success-page__title {
        font-size: 66px
    }

    .success-page__message {
        font-size: 36px
    }
}

.lrn-prg {
    background: #fff;
    color: #1a1a1a;
    overflow-x: clip
}

.lrn-prg__ttl-blk {
    position: relative;
    padding: 48px 24px;
    display: flex;
    flex-direction: column;
    align-items: center;
    max-width: 1140px;
    margin: 0 auto
}

.lrn-prg__ttl-deco {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, #DC2833 0%, #DC2833 33%, transparent 33%, transparent 67%, #13BE66 67%, #13BE66 100%)
}

.lrn-prg__ttl-txt {
    text-align: center;
    margin: 0 0 48px;
    max-width: 720px
}

.lrn-prg__ttl-hdg {
    font-size: 50px;
    line-height: 1.1;
    margin: 0;
    color: #2d2d2d;
    letter-spacing: -.02em
}

.lrn-prg__ttl-img-wrap {
    position: relative;
    width: 100%;
    max-width: 920px;
    border-radius: 22px;
    overflow: hidden;
    border: 1px solid #e8e8e8
}

.lrn-prg__ttl-img {
    width: 100%;
    height: 420px;
    object-fit: cover;
    display: block
}

.lrn-prg__ttl-ovr {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, #dc283326 0%, transparent 60%);
    pointer-events: none
}

.lrn-prg__crse-sect {
    padding: 48px 24px;
    max-width: 1140px;
    margin: 0 auto
}

.lrn-prg__crse-grid {
    display: grid;
    grid-template-columns: 280px 1fr;
    gap: 48px;
    align-items: start
}

.lrn-prg__crse-asde {
    background: #f7f7f7;
    padding: 24px;
    border-radius: 14px;
    border: 1px solid #e4e4e4;
    position: sticky;
    top: 24px
}

.lrn-prg__crse-asde-hdg {
    font-size: 14px;
    line-height: 1.3;
    margin: 0 0 16px;
    color: #5a5a5a;
    text-transform: uppercase;
    letter-spacing: .08em;
    font-weight: 600
}

.lrn-prg__crse-asde-txt {
    font-size: 14px;
    line-height: 1.5;
    margin: 0;
    color: #4a4a4a
}

.lrn-prg__crse-mn {
    display: flex;
    flex-direction: column;
    gap: 24px
}

.lrn-prg__crse-hdg {
    font-size: 36px;
    line-height: 1.1;
    margin: 0 0 24px;
    color: #2d2d2d;
    display: flex;
    align-items: center;
    gap: 16px
}

.lrn-prg__crse-hdg::before {
    content: '';
    width: 12px;
    height: 12px;
    background: #DC2833;
    border-radius: 2px;
    flex-shrink: 0;
    transform: rotate(45deg)
}

.lrn-prg__crse-para {
    font-size: 14px;
    line-height: 1.7;
    margin: 0 0 16px;
    color: #3a3a3a
}

.lrn-prg__crse-para:last-child {
    margin-bottom: 0
}

.lrn-prg__mdls-sect {
    padding: 48px 24px;
    max-width: 1140px;
    margin: 0 auto;
    background: linear-gradient(165deg, transparent 0%, transparent 40%, #13be660a 40%, #13be660a 60%, transparent 60%, transparent 100%)
}

.lrn-prg__mdls-hdg {
    font-size: 36px;
    line-height: 1.1;
    margin: 0 0 48px;
    color: #2d2d2d;
    text-align: center
}

.lrn-prg__mdls-grd {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px
}

.lrn-prg__mdl-crd {
    background: #fff;
    padding: 24px;
    border-radius: 14px;
    border: 1px solid #e4e4e4;
    position: relative;
    box-shadow: 0 3px 6px -1px #dc28330d 0 4px 14px -1px #dc28331a 0 9px 52px -1px #dc283321;
    transition: transform .14s cubic-bezier(0.4, 0, 1, 1);
    animation: lrn-prg-mdl-rvl .16s cubic-bezier(0.4, 0, 1, 1) backwards
}

.lrn-prg__mdl-crd:nth-child(1) {
    animation-delay: 0s
}

.lrn-prg__mdl-crd:nth-child(2) {
    animation-delay: .08s
}

.lrn-prg__mdl-crd:nth-child(3) {
    animation-delay: .16s
}

.lrn-prg__mdl-crd:nth-child(4) {
    animation-delay: .24s
}

.lrn-prg__mdl-crd:nth-child(5) {
    animation-delay: .32s
}

.lrn-prg__mdl-crd:nth-child(6) {
    animation-delay: .4s
}

@keyframes lrn-prg-mdl-rvl {
    from {
        opacity: 0;
        transform: translateY(16px)
    }

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

.lrn-prg__mdl-crd:hover {
    transform: translateY(-4px)
}

.lrn-prg__mdl-acc {
    position: absolute;
    top: 0;
    right: 0;
    width: 48px;
    height: 48px;
    border-bottom-left-radius: 22px;
    background: #DC2833
}

.lrn-prg__mdl-num {
    font-size: 26px;
    line-height: 1.1;
    margin: 0 0 8px;
    color: #DC2833;
    font-weight: 700
}

.lrn-prg__mdl-ttl {
    font-size: 26px;
    line-height: 1.3;
    margin: 0 0 16px;
    color: #2d2d2d
}

.lrn-prg__mdl-desc {
    font-size: 14px;
    line-height: 1.5;
    margin: 0;
    color: #4a4a4a
}

.lrn-prg__chklst-sect {
    padding: 48px 24px;
    max-width: 1140px;
    margin: 0 auto;
    background: #fafafa;
    border-top: 1px solid #e4e4e4;
    border-bottom: 1px solid #e4e4e4
}

.lrn-prg__chklst-hdg {
    font-size: 36px;
    line-height: 1.1;
    margin: 0 0 24px;
    color: #2d2d2d;
    display: flex;
    align-items: center;
    gap: 16px
}

.lrn-prg__chklst-hdg::before {
    content: '';
    width: 8px;
    height: 36px;
    background: #13BE66;
    border-radius: 8px;
    flex-shrink: 0
}

.lrn-prg__chklst-prg {
    margin: 0 0 24px;
    padding: 16px;
    background: #fff;
    border-radius: 8px;
    border: 1px solid #e4e4e4
}

.lrn-prg__chklst-prg-txt {
    font-size: 14px;
    line-height: 1.3;
    margin: 0 0 8px;
    color: #5a5a5a;
    letter-spacing: .04em
}

.lrn-prg__chklst-prg-bar {
    width: 100%;
    height: 8px;
    background: #e8e8e8;
    border-radius: 8px;
    overflow: hidden;
    position: relative
}

.lrn-prg__chklst-prg-fll {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    background: linear-gradient(90deg, #13BE66 0%, #FDA21F 100%);
    width: 66.66%;
    border-radius: 8px;
    transition: width .18s cubic-bezier(0.4, 0, 1, 1)
}

.lrn-prg__chklst-lst {
    display: flex;
    flex-direction: column;
    gap: 16px
}

.lrn-prg__chklst-itm {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    padding: 16px;
    background: #fff;
    border-radius: 8px;
    border: 1px solid #e4e4e4;
    transition: background-color .12s cubic-bezier(0.4, 0, 1, 1), border-color .12s cubic-bezier(0.4, 0, 1, 1)
}

.lrn-prg__chklst-itm.is-cmplt {
    background: #f0fdf7;
    border-color: #c5f0dc
}

.lrn-prg__chklst-chk {
    width: 24px;
    height: 24px;
    border: 2px solid #d4d4d4;
    border-radius: 8px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    cursor: pointer;
    transition: background-color .12s cubic-bezier(0.4, 0, 1, 1), border-color .12s cubic-bezier(0.4, 0, 1, 1)
}

.lrn-prg__chklst-itm.is-cmplt .lrn-prg__chklst-chk {
    background: #13BE66;
    border-color: #13BE66
}

.lrn-prg__chklst-chk::after {
    content: '';
    width: 12px;
    height: 8px;
    border-left: 2px solid #fff;
    border-bottom: 2px solid #fff;
    transform: rotate(-45deg) translateY(-2px);
    opacity: 0;
    transition: opacity .12s cubic-bezier(0.4, 0, 1, 1)
}

.lrn-prg__chklst-itm.is-cmplt .lrn-prg__chklst-chk::after {
    opacity: 1
}

.lrn-prg__chklst-txt {
    font-size: 14px;
    line-height: 1.5;
    margin: 0;
    color: #3a3a3a;
    flex: 1
}

.lrn-prg__enrl-sect {
    padding: 48px 24px;
    max-width: 1140px;
    margin: 0 auto;
    position: relative
}

.lrn-prg__enrl-brkt-tl {
    position: absolute;
    top: 48px;
    left: 24px;
    width: 32px;
    height: 32px;
    border-top: 3px solid #DC2833;
    border-left: 3px solid #DC2833;
    border-top-left-radius: 8px
}

.lrn-prg__enrl-brkt-tr {
    position: absolute;
    top: 48px;
    right: 24px;
    width: 32px;
    height: 32px;
    border-top: 3px solid #13BE66;
    border-right: 3px solid #13BE66;
    border-top-right-radius: 8px
}

.lrn-prg__enrl-brkt-bl {
    position: absolute;
    bottom: 48px;
    left: 24px;
    width: 32px;
    height: 32px;
    border-bottom: 3px solid #FDA21F;
    border-left: 3px solid #FDA21F;
    border-bottom-left-radius: 8px
}

.lrn-prg__enrl-brkt-br {
    position: absolute;
    bottom: 48px;
    right: 24px;
    width: 32px;
    height: 32px;
    border-bottom: 3px solid #DC2833;
    border-right: 3px solid #DC2833;
    border-bottom-right-radius: 8px
}

.lrn-prg__enrl-ctn {
    max-width: 640px;
    margin: 0 auto;
    text-align: center
}

.lrn-prg__enrl-hdg {
    font-size: 36px;
    line-height: 1.1;
    margin: 0 0 24px;
    color: #2d2d2d
}

.lrn-prg__enrl-para {
    font-size: 14px;
    line-height: 1.7;
    margin: 0 0 16px;
    color: #3a3a3a
}

.lrn-prg__enrl-para:last-of-type {
    margin-bottom: 48px
}

.lrn-prg__enrl-dtls {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    margin: 0 0 48px
}

.lrn-prg__enrl-dtl {
    padding: 24px;
    background: #fff;
    border-radius: 14px;
    border: 1px solid #e4e4e4;
    box-shadow: 0 3px 6px -1px #13be660d 0 4px 14px -1px #13be661a 0 9px 52px -1px #13be6621
}

.lrn-prg__enrl-dtl-icn {
    width: 48px;
    height: 48px;
    margin: 0 auto 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 34px;
    background: linear-gradient(135deg, #dc283314 0%, #13be6614 100%)
}

.lrn-prg__enrl-dtl-icn svg {
    width: 24px;
    height: 24px
}

.lrn-prg__enrl-dtl-lbl {
    font-size: 14px;
    line-height: 1.3;
    margin: 0 0 8px;
    color: #5a5a5a;
    text-transform: uppercase;
    letter-spacing: .08em;
    font-weight: 600
}

.lrn-prg__enrl-dtl-val {
    font-size: 26px;
    line-height: 1.1;
    margin: 0;
    color: #2d2d2d;
    font-weight: 700
}

.lrn-prg__enrl-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 16px 48px;
    background: #DC2833;
    color: #fff;
    font-size: 14px;
    line-height: 1.3;
    font-weight: 600;
    text-decoration: none;
    border-radius: 8px;
    border: none;
    cursor: pointer;
    position: relative;
    overflow: hidden;
    transition: transform .12s cubic-bezier(0.4, 0, 1, 1);
    letter-spacing: .04em
}

.lrn-prg__enrl-btn::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: #00000026;
    transition: left .14s cubic-bezier(0.4, 0, 1, 1)
}

.lrn-prg__enrl-btn:hover {
    transform: translateY(-2px)
}

.lrn-prg__enrl-btn:hover::before {
    left: 0
}

.lrn-prg__enrl-btn:active {
    transform: translateY(0)
}

.lrn-prg__dvdr {
    height: 1px;
    background: linear-gradient(90deg, transparent 0%, transparent 40%, #DC2833 40%, #DC2833 60%, transparent 60%, transparent 100%);
    margin: 48px auto;
    max-width: 1140px
}

@media (max-width: 1024px) {
    .lrn-prg__ttl-hdg {
        font-size: 36px
    }

    .lrn-prg__ttl-img {
        height: 320px
    }

    .lrn-prg__crse-grid {
        grid-template-columns: 1fr;
        gap: 24px
    }

    .lrn-prg__crse-asde {
        position: static
    }

    .lrn-prg__crse-hdg,
    .lrn-prg__mdls-hdg,
    .lrn-prg__chklst-hdg,
    .lrn-prg__enrl-hdg {
        font-size: 26px
    }

    .lrn-prg__mdls-grd {
        grid-template-columns: 1fr
    }

    .lrn-prg__enrl-dtls {
        grid-template-columns: 1fr
    }
}

@media (max-width: 640px) {
    .lrn-prg__ttl-blk {
        padding: 24px 16px
    }

    .lrn-prg__ttl-hdg {
        font-size: 26px
    }

    .lrn-prg__ttl-txt {
        margin: 0 0 24px
    }

    .lrn-prg__ttl-img {
        height: 240px
    }

    .lrn-prg__crse-sect,
    .lrn-prg__mdls-sect,
    .lrn-prg__chklst-sect,
    .lrn-prg__enrl-sect {
        padding: 24px 16px
    }

    .lrn-prg__crse-hdg,
    .lrn-prg__mdls-hdg,
    .lrn-prg__chklst-hdg,
    .lrn-prg__enrl-hdg {
        font-size: 26px
    }

    .lrn-prg__mdls-hdg {
        margin: 0 0 24px
    }

    .lrn-prg__mdl-ttl {
        font-size: 14px
    }

    .lrn-prg__mdl-num {
        font-size: 14px
    }

    .lrn-prg__enrl-btn {
        padding: 16px 24px;
        width: 100%
    }

    .lrn-prg__enrl-brkt-tl,
    .lrn-prg__enrl-brkt-tr,
    .lrn-prg__enrl-brkt-bl,
    .lrn-prg__enrl-brkt-br {
        width: 24px;
        height: 24px
    }

    .lrn-prg__enrl-brkt-tl,
    .lrn-prg__enrl-brkt-bl {
        left: 16px
    }

    .lrn-prg__enrl-brkt-tr,
    .lrn-prg__enrl-brkt-br {
        right: 16px
    }

    .lrn-prg__enrl-brkt-tl,
    .lrn-prg__enrl-brkt-tr {
        top: 24px
    }

    .lrn-prg__enrl-brkt-bl,
    .lrn-prg__enrl-brkt-br {
        bottom: 24px
    }
}

@media (max-width: 360px) {
    .lrn-prg__ttl-hdg {
        font-size: 26px
    }

    .lrn-prg__crse-hdg,
    .lrn-prg__mdls-hdg,
    .lrn-prg__chklst-hdg,
    .lrn-prg__enrl-hdg {
        font-size: 26px
    }
}

.cntct {
    background: linear-gradient(112deg, #fff 0%, #f4f4f4 100%);
    padding: 0;
    margin: 0
}

.cntct__hero {
    max-width: 1140px;
    margin: 0 auto;
    padding: 96px 24px 48px;
    display: flex;
    flex-direction: row;
    gap: 48px;
    align-items: flex-start;
    position: relative
}

.cntct__hero-txt {
    flex: 1;
    padding: 48px 0 0
}

.cntct__hero-img {
    width: 340px;
    flex-shrink: 0;
    position: relative
}

.cntct__hero-img img {
    width: 100%;
    height: 420px;
    object-fit: cover;
    border-radius: 22px;
    border: 1px solid #dc28331f;
    filter: brightness(0.92) contrast(1.08) saturate(0.85) hue-rotate(-8deg)
}

.cntct__hero-decor {
    position: absolute;
    width: 180px;
    height: 180px;
    top: -24px;
    left: -24px;
    border: 3px solid #dc283314;
    border-radius: 48px;
    pointer-events: none;
    z-index: 0
}

.cntct__hero-title {
    font-size: 66px;
    line-height: 1.1;
    margin: 0 0 24px;
    color: #1a1a1a;
    letter-spacing: -.02em
}

.cntct__hero-manifest {
    font-size: 26px;
    line-height: 1.5;
    color: #2a2a2a;
    margin: 0 0 16px;
    max-width: 620px
}

.cntct__hero-manifest:last-of-type {
    margin-bottom: 0
}

.cntct__divider {
    height: 8px;
    background: linear-gradient(90deg, #DC2833 0%, #FDA21F 100%);
    margin: 0
}

.cntct__form-zone {
    background: #fff;
    position: relative;
    overflow: hidden
}

.cntct__form-zone::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: radial-gradient(circle at 20% 30%, #dc283308 0%, transparent 50%), radial-gradient(circle at 80% 70%, #13be6608 0%, transparent 50%);
    pointer-events: none
}

.cntct__form-zone::after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 2px;
    height: 2px;
    background: #2a2a2a;
    box-shadow: 120px 80px 0 0 #dc28330f 340px 160px 0 0 #dc28330a 580px 240px 0 0 #dc28330d 820px 120px 0 0 #dc283308 180px 320px 0 0 #13be660d 460px 400px 0 0 #13be660a 720px 480px 0 0 #13be660f 920px 360px 0 0 #13be6608 240px 560px 0 0 #fda21f0d 540px 640px 0 0 #fda21f0a 780px 720px 0 0 #fda21f0f;
    pointer-events: none
}

.cntct__form-wrap {
    max-width: 1140px;
    margin: 0 auto;
    padding: 96px 24px;
    display: flex;
    flex-direction: row;
    gap: 48px;
    position: relative;
    z-index: 1
}

.cntct__form-aside {
    width: 280px;
    flex-shrink: 0
}

.cntct__form-main {
    flex: 1;
    max-width: 680px
}

.cntct__aside-label {
    font-size: 14px;
    line-height: 1.5;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: #DC2833;
    margin: 0 0 16px;
    font-weight: 600
}

.cntct__aside-title {
    font-size: 36px;
    line-height: 1.3;
    color: #1a1a1a;
    margin: 0 0 24px
}

.cntct__aside-desc {
    font-size: 14px;
    line-height: 1.7;
    color: #3a3a3a;
    margin: 0 0 48px
}

.cntct__info-card {
    background: linear-gradient(135deg, #f8f8f8 0%, #fff 100%);
    border: 1px solid #dc28331a;
    border-radius: 14px;
    padding: 24px;
    box-shadow: 0 3px 6px -1px #dc28330d 0 4px 14px -1px #dc28331a 0 9px 52px -1px #dc283321
}

.cntct__info-row {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 16px;
    margin: 0 0 24px
}

.cntct__info-row:last-child {
    margin-bottom: 0
}

.cntct__info-ico {
    width: 32px;
    height: 32px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    background: #dc283314
}

.cntct__info-ico svg {
    width: 18px;
    height: 18px;
    fill: #DC2833
}

.cntct__info-txt {
    flex: 1
}

.cntct__info-lbl {
    font-size: 14px;
    line-height: 1.5;
    color: #5a5a5a;
    margin: 0 0 8px;
    letter-spacing: .02em
}

.cntct__info-val {
    font-size: 14px;
    line-height: 1.7;
    color: #1a1a1a;
    margin: 0
}

.cntct__info-val a {
    color: #1a1a1a;
    text-decoration: none;
    transition: color .14s cubic-bezier(0.4, 0, 1, 1)
}

.cntct__info-val a:hover {
    color: #DC2833
}

.cntct__form-hd {
    margin: 0 0 48px;
    position: relative;
    padding: 0 0 0 24px
}

.cntct__form-hd::before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 6px;
    height: 100%;
    background: linear-gradient(180deg, #DC2833 0%, #FDA21F 100%);
    border-radius: 8px
}

.cntct__form-title {
    font-size: 36px;
    line-height: 1.3;
    color: #1a1a1a;
    margin: 0 0 16px
}

.cntct__form-subtitle {
    font-size: 14px;
    line-height: 1.7;
    color: #3a3a3a;
    margin: 0
}

.cntct__form-body {
    display: flex;
    flex-direction: column;
    gap: 24px
}

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

.cntct__field-lbl {
    font-size: 14px;
    line-height: 1.5;
    color: #2a2a2a;
    font-weight: 600;
    letter-spacing: .01em
}

.cntct__field-input {
    width: 100%;
    padding: 16px 16px 16px 48px;
    font-size: 14px;
    line-height: 1.5;
    color: #1a1a1a;
    background: #fff;
    border: 1px solid #2a2a2a26;
    border-radius: 8px;
    transition: border-color .12s cubic-bezier(0.4, 0, 1, 1), box-shadow .12s cubic-bezier(0.4, 0, 1, 1);
    box-shadow: inset 0 1px 3px #2a2a2a0f;
    position: relative
}

.cntct__field-input:focus {
    outline: none;
    border-color: #DC2833;
    box-shadow: inset 0 1px 3px #dc28331f 0 0 0 3px #dc283314
}

.cntct__field-input::placeholder {
    color: #8a8a8a
}

.cntct__field-wrap {
    position: relative
}

.cntct__field-wrap::before {
    content: '';
    position: absolute;
    left: 16px;
    top: 50%;
    transform: translateY(-50%);
    width: 18px;
    height: 18px;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%23DC2833'%3E%3Cpath d='M20 4H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 4l-8 5-8-5V6l8 5 8-5v2z'/%3E%3C/svg%3E") no-repeat center;
    background-size: contain;
    pointer-events: none;
    z-index: 1
}

.cntct__radio-set {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding: 24px;
    background: linear-gradient(135deg, #fafafa 0%, #fff 100%);
    border: 1px solid #2a2a2a14;
    border-radius: 14px
}

.cntct__radio-opt {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 16px;
    cursor: pointer;
    padding: 16px;
    background: #fff;
    border: 2px solid #2a2a2a1a;
    border-radius: 8px;
    transition: border-color .14s cubic-bezier(0.4, 0, 1, 1), background-color .14s cubic-bezier(0.4, 0, 1, 1), transform .1s cubic-bezier(0.4, 0, 1, 1)
}

.cntct__radio-opt:hover {
    border-color: #dc28334d;
    background: #dc283305
}

.cntct__radio-input {
    width: 20px;
    height: 20px;
    margin: 0;
    flex-shrink: 0;
    cursor: pointer;
    accent-color: #DC2833
}

.cntct__radio-txt {
    flex: 1;
    font-size: 14px;
    line-height: 1.5;
    color: #2a2a2a
}

.cntct__radio-opt:has(.cntct__radio-input:checked) {
    border-color: #DC2833;
    background: #dc28330a;
    transform: translateX(4px)
}

.cntct__privacy {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 16px;
    padding: 24px;
    background: linear-gradient(135deg, #f8f8f8 0%, #fff 100%);
    border: 1px solid #2a2a2a14;
    border-radius: 14px
}

.cntct__privacy-check {
    width: 20px;
    height: 20px;
    margin: 2px 0 0;
    flex-shrink: 0;
    cursor: pointer;
    accent-color: #DC2833
}

.cntct__privacy-txt {
    flex: 1;
    font-size: 14px;
    line-height: 1.7;
    color: #3a3a3a
}

.cntct__privacy-txt a {
    color: #DC2833;
    text-decoration: none;
    border-bottom: 1px solid #dc28334d;
    transition: border-color .12s cubic-bezier(0.4, 0, 1, 1)
}

.cntct__privacy-txt a:hover {
    border-bottom-color: #DC2833
}

.cntct__submit {
    padding: 16px 48px;
    font-size: 14px;
    line-height: 1.5;
    color: #fff;
    background: #DC2833;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    font-weight: 600;
    letter-spacing: .04em;
    text-transform: uppercase;
    position: relative;
    overflow: hidden;
    transition: transform .14s cubic-bezier(0.4, 0, 1, 1), box-shadow .14s cubic-bezier(0.4, 0, 1, 1);
    box-shadow: 0 3px 6px -1px #dc28330d 0 4px 14px -1px #dc28331a 0 9px 52px -1px #dc283321;
    align-self: flex-start
}

.cntct__submit::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent 0%, #fff3 50%, transparent 100%);
    transition: left .16s cubic-bezier(0.4, 0, 1, 1)
}

.cntct__submit:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 14px -1px #dc28331a 0 9px 52px -1px #dc283321 0 16px 64px -1px #dc283329
}

.cntct__submit:hover::before {
    left: 100%
}

.cntct__submit:active {
    transform: translateY(0)
}

.cntct__submit:focus {
    outline: none;
    box-shadow: 0 3px 6px -1px #dc28330d 0 4px 14px -1px #dc28331a 0 9px 52px -1px #dc283321 0 0 0 4px #dc283333
}

@media (max-width: 1024px) {
    .cntct__hero {
        flex-direction: column;
        padding: 72px 24px 48px
    }

    .cntct__hero-txt {
        padding: 0
    }

    .cntct__hero-img {
        width: 100%;
        max-width: 480px
    }

    .cntct__hero-title {
        font-size: 50px
    }

    .cntct__hero-manifest {
        font-size: 26px
    }

    .cntct__form-wrap {
        flex-direction: column;
        padding: 72px 24px
    }

    .cntct__form-aside {
        width: 100%
    }

    .cntct__form-main {
        max-width: 100%
    }
}

@media (max-width: 640px) {
    .cntct__hero {
        padding: 48px 16px 24px
    }

    .cntct__hero-title {
        font-size: 36px
    }

    .cntct__hero-manifest {
        font-size: 14px
    }

    .cntct__hero-img img {
        height: 320px
    }

    .cntct__hero-decor {
        width: 120px;
        height: 120px;
        top: -16px;
        left: -16px
    }

    .cntct__form-wrap {
        padding: 48px 16px
    }

    .cntct__aside-title {
        font-size: 26px
    }

    .cntct__form-title {
        font-size: 26px
    }

    .cntct__info-card {
        padding: 16px
    }

    .cntct__info-row {
        margin-bottom: 16px
    }

    .cntct__submit {
        width: 100%;
        padding: 16px 24px
    }
}

@media (max-width: 360px) {
    .cntct__hero {
        padding: 48px 8px 24px
    }

    .cntct__form-wrap {
        padding: 48px 8px
    }

    .cntct__hero-title {
        font-size: 26px
    }
}

@keyframes cntct-slide-left {
    from {
        opacity: 0;
        transform: translateX(-48px)
    }

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

@keyframes cntct-slide-right {
    from {
        opacity: 0;
        transform: translateX(48px)
    }

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

.cntct__hero-txt {
    animation: cntct-slide-left .8s cubic-bezier(0.16, 1, 0.3, 1) forwards
}

.cntct__hero-img {
    animation: cntct-slide-right .8s cubic-bezier(0.16, 1, 0.3, 1) forwards
}

.cntct__form-aside {
    animation: cntct-slide-left .9s cubic-bezier(0.16, 1, 0.3, 1) forwards
}

.cntct__form-main {
    animation: cntct-slide-right .9s cubic-bezier(0.16, 1, 0.3, 1) forwards
}