@import "https://cdn.jsdelivr.net/npm/@fontsource/cabin@latest/400.css";
@import "https://cdn.jsdelivr.net/npm/@fontsource/cabin@latest/400-italic.css";
@import "https://cdn.jsdelivr.net/npm/@fontsource/cabin@latest/600.css";
@import "https://cdn.jsdelivr.net/npm/@fontsource/cabin@latest/600-italic.css";
@import "https://cdn.jsdelivr.net/npm/@fontsource/cabin@latest/700.css";
@import "https://cdn.jsdelivr.net/npm/@fontsource/cabin@latest/700-italic.css";
@import "https://cdn.jsdelivr.net/npm/@fontsource/nunito@latest/400.css";
@import "https://cdn.jsdelivr.net/npm/@fontsource/nunito@latest/400-italic.css";
@import "https://cdn.jsdelivr.net/npm/@fontsource/nunito@latest/600.css";
@import "https://cdn.jsdelivr.net/npm/@fontsource/nunito@latest/600-italic.css";
@import "https://cdn.jsdelivr.net/npm/@fontsource/nunito@latest/700.css";
@import "https://cdn.jsdelivr.net/npm/@fontsource/nunito@latest/700-italic.css";

html {
scroll-behavior: auto
}

body {
margin: 0;
overflow-x: hidden;
min-height: 100vh
}

.pg-shell {
box-sizing: border-box;
max-width: 1440px;
margin: 0 auto
}

.bar-top {
background: #058A3E;
padding: 8px 40px
}

.bar-top__pod {
box-sizing: border-box;
max-width: 1440px;
margin: 0 auto;
display: flex;
align-items: center;
justify-content: space-between;
gap: 16px
}

.bar-top__contact-deck {
display: flex;
align-items: center;
gap: 24px
}

.bar-top__item {
display: flex;
align-items: center;
gap: 8px;
font-family: 'Nunito', sans-serif;
font-size: 13px;
color: #fff;
text-decoration: none;
transition: opacity .5s cubic-bezier(0.22, 1, 0.36, 1)
}

.bar-top__item:hover {
opacity: .78
}

.bar-top__item svg {
flex-shrink: 0
}

.bar-top__badge {
display: flex;
align-items: center;
gap: 8px;
background: #ffffff26;
border-radius: 48px;
padding: 8px 16px
}

.bar-top__badge-txt {
font-family: 'Cabin', sans-serif;
font-size: 13px;
font-weight: 600;
color: #fff;
line-height: 1.15
}

.bar-top__stars {
display: flex;
gap: 2px
}

.bar-top__star {
width: 12px;
height: 12px;
fill: #FB864B
}

.hd-main {
background: #fff;
border-bottom: 2px solid #E9E8E8;
box-shadow: -1px 6px 20px 0 #058a3e1a
}

.hd-main__pod {
box-sizing: border-box;
max-width: 1440px;
margin: 0 auto;
padding: 0 40px;
display: flex;
align-items: center;
justify-content: space-between;
gap: 24px;
min-height: 88px
}

.brand-cell {
display: flex;
flex-direction: column;
align-items: flex-start;
gap: 8px;
flex-shrink: 0;
border-top: 2px solid #058A3E;
border-bottom: 2px solid #058A3E;
padding: 8px 0
}

.brand-cell__img-wrap {
display: flex;
align-items: center;
justify-content: center;
width: 90px;
height: 90px;
background: #fff;
border-radius: 8px;
box-shadow: -1px 2px 5px 0 #058a3e0f
}

.brand-cell__img {
width: 90px;
height: 90px;
object-fit: contain;
display: block
}

.brand-cell__tag {
font-family: 'Nunito', sans-serif;
font-size: 13px;
color: #058A3E;
font-weight: 600;
line-height: 1.15;
white-space: nowrap
}

.menu-deck {
display: flex;
align-items: center;
gap: 8px;
flex-wrap: wrap;
justify-content: flex-end
}

.menu-deck__link {
font-family: 'Cabin', sans-serif;
font-size: 15px;
font-weight: 600;
color: #2d2d2d;
text-decoration: none;
padding: 8px 16px;
border-radius: 8px;
border: 2px solid transparent;
line-height: 1.4;
white-space: nowrap;
transition: color .45s cubic-bezier(0.22, 1, 0.36, 1), border-color .45s cubic-bezier(0.22, 1, 0.36, 1), background .45s cubic-bezier(0.22, 1, 0.36, 1)
}

.menu-deck__link:hover {
color: #058A3E;
background: #058a3e0f;
border-color: #058a3e2e
}

.menu-deck__link:focus {
outline: 2px solid #058A3E;
outline-offset: 2px
}

.menu-deck__link--accent {
background: #058A3E;
color: #fff;
border-color: #058A3E
}

.menu-deck__link--accent:hover {
background: #046d32;
border-color: #046d32;
color: #fff
}

.ft-root {
background: #1b3a28;
padding: 80px 40px 40px
}

.ft-root__pod {
box-sizing: border-box;
max-width: 1440px;
margin: 0 auto
}

.ft-root__grid {
display: grid;
grid-template-columns: 1fr 1fr 1fr 1fr;
gap: 40px;
padding-bottom: 40px;
border-bottom: 1px solid #ffffff1f
}

.ft-col__head {
font-family: 'Cabin', sans-serif;
font-size: 13px;
font-weight: 700;
color: #FB864B;
text-transform: uppercase;
letter-spacing: .08em;
line-height: 1.15;
margin-bottom: 16px
}

.ft-col__brand-row {
display: flex;
align-items: center;
gap: 16px;
margin-bottom: 16px
}

.ft-col__logo-wrap {
width: 56px;
height: 56px;
background: #fff;
border-radius: 8px;
display: flex;
align-items: center;
justify-content: center;
box-shadow: -1px 2px 5px 0 #058a3e0f;
flex-shrink: 0
}

.ft-col__logo {
width: 56px;
height: 56px;
object-fit: contain;
display: block
}

.ft-col__brand-name {
font-family: 'Cabin', sans-serif;
font-size: 21px;
font-weight: 700;
color: #fff;
line-height: 1.15
}

.ft-col__desc {
font-family: 'Nunito', sans-serif;
font-size: 15px;
color: #ffffffb3;
line-height: 1.65
}

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

.ft-col__list-item {
margin: 0
}

.ft-col__list-link {
font-family: 'Nunito', sans-serif;
font-size: 15px;
color: #ffffffb3;
text-decoration: none;
line-height: 1.65;
display: inline-block;
transition: color .5s cubic-bezier(0.22, 1, 0.36, 1)
}

.ft-col__list-link:hover {
color: #FB864B
}

.ft-col__list-link:focus {
outline: 2px solid #058A3E;
outline-offset: 2px
}

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

.ft-col__contact-item {
display: flex;
align-items: flex-start;
gap: 8px
}

.ft-col__contact-icon {
flex-shrink: 0;
margin-top: 2px
}

.ft-col__contact-txt {
font-family: 'Nunito', sans-serif;
font-size: 15px;
color: #ffffffb3;
line-height: 1.65;
text-decoration: none;
transition: color .5s cubic-bezier(0.22, 1, 0.36, 1)
}

.ft-col__contact-txt:hover {
color: #FB864B
}

.ft-root__bottom {
display: flex;
align-items: center;
justify-content: space-between;
gap: 24px;
padding-top: 40px;
flex-wrap: wrap
}

.ft-root__copy {
font-family: 'Nunito', sans-serif;
font-size: 13px;
color: #ffffff73;
line-height: 1.4
}

.ft-root__legal {
display: flex;
gap: 24px;
flex-wrap: wrap
}

.ft-root__legal-link {
font-family: 'Nunito', sans-serif;
font-size: 13px;
color: #ffffff73;
text-decoration: none;
transition: color .5s cubic-bezier(0.22, 1, 0.36, 1)
}

.ft-root__legal-link:hover {
color: #FB864B
}

.ft-root__legal-link:focus {
outline: 2px solid #058A3E;
outline-offset: 2px
}

.ck-bar {
position: fixed;
top: 0;
left: 0;
right: 0;
margin: 0 auto;
width: 480px;
max-width: calc(100vw - 32px);
background: #fff;
border-radius: 0 0 14px 14px;
box-shadow: -1px 9px 52px 0 #058a3e1a;
padding: 24px;
z-index: 2000;
box-sizing: border-box;
transform: translateY(-110%);
transition: transform .18s ease-in-out
}

.ck-bar.visible {
transform: translateY(0)
}

.ck-bar__icon-row {
display: flex;
justify-content: center;
margin-bottom: 16px
}

.ck-bar__icon-wrap {
width: 40px;
height: 40px;
background: #058a3e14;
border-radius: 48px;
display: flex;
align-items: center;
justify-content: center
}

.ck-bar__msg {
font-family: 'Nunito', sans-serif;
font-size: 15px;
color: #2d2d2d;
line-height: 1.65;
text-align: center;
margin-bottom: 24px
}

.ck-bar__actions {
display: flex;
gap: 16px;
justify-content: center
}

.ck-bar__btn-ok {
font-family: 'Cabin', sans-serif;
font-size: 15px;
font-weight: 700;
color: #fff;
background: #058A3E;
border: 2px solid #058A3E;
border-radius: 8px;
padding: 8px 24px;
cursor: pointer;
line-height: 1.4;
min-height: 44px;
transition: background .45s cubic-bezier(0.22, 1, 0.36, 1), border-color .45s cubic-bezier(0.22, 1, 0.36, 1)
}

.ck-bar__btn-ok:hover {
background: #046d32;
border-color: #046d32
}

.ck-bar__btn-ok:focus {
outline: 2px solid #058A3E;
outline-offset: 2px
}

.ck-bar__btn-ok:active {
box-shadow: inset 0 2px 6px #058a3e40
}

.ck-bar__link-skip {
font-family: 'Cabin', sans-serif;
font-size: 15px;
font-weight: 600;
color: #2d2d2d;
background: transparent;
border: 2px solid #E9E8E8;
border-radius: 8px;
padding: 8px 24px;
cursor: pointer;
line-height: 1.4;
min-height: 44px;
transition: border-color .45s cubic-bezier(0.22, 1, 0.36, 1), color .45s cubic-bezier(0.22, 1, 0.36, 1)
}

.ck-bar__link-skip:hover {
border-color: #058A3E;
color: #058A3E
}

.ck-bar__link-skip:focus {
outline: 2px solid #058A3E;
outline-offset: 2px
}

@media (max-width: 1024px) {
.bar-top {
padding: 8px 24px
}

.hd-main__pod {
padding: 0 24px;
gap: 16px
}

.ft-root {
padding: 80px 24px 40px
}

.ft-root__grid {
grid-template-columns: 1fr 1fr;
gap: 40px
}
}

@media (max-width: 768px) {
.bar-top__contact-deck {
gap: 16px
}

.hd-main__pod {
flex-wrap: wrap;
padding: 16px 24px;
min-height: unset
}

.menu-deck {
gap: 8px
}

.menu-deck__link {
font-size: 13px;
padding: 8px
}

.ft-root__grid {
grid-template-columns: 1fr
}

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

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

.bar-top__contact-deck {
flex-direction: column;
align-items: flex-start;
gap: 8px
}

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

.hd-main__pod {
padding: 16px
}

.ft-root {
padding: 40px 16px 24px
}

.ft-root__grid {
gap: 24px
}

.menu-deck {
gap: 8px
}
}

.doc-info {
max-width: 860px;
margin: 0 auto;
padding: 80px 40px;
color: #2d2d2d;
line-height: 1.85;
font-size: 15px
}

.doc-info p {
margin: 0 0 24px;
line-height: 1.85;
font-size: 15px;
color: #2d2d2d
}

.doc-info ul,
.doc-info ol {
margin: 0 0 24px;
padding-left: 24px
}

.doc-info li {
margin-bottom: 8px;
line-height: 1.65;
font-size: 15px;
color: #2d2d2d
}

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

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

.doc-info ul ul,
.doc-info ol ol,
.doc-info ul ol,
.doc-info ol ul {
margin-top: 8px;
margin-bottom: 8px
}

.doc-info em,
.doc-info i {
font-style: italic;
color: #3a3a3a
}

.doc-info a {
color: #058A3E;
text-decoration: underline;
text-underline-offset: 3px;
transition: color .1s ease-in-out, text-decoration-color .1s ease-in-out
}

.doc-info a:hover {
color: #FB864B;
text-decoration-color: #FB864B
}

.doc-info a:visited {
color: #046b30
}

.doc-info table {
width: 100%;
border-collapse: collapse;
margin: 0 0 40px;
font-size: 15px;
box-shadow: -1px 2px 5px 0 #058a3e0f;
border-radius: 14px;
overflow: hidden
}

.doc-info thead {
background-color: #058A3E
}

.doc-info thead th {
color: #fff;
font-weight: 700;
font-size: 13px;
padding: 16px 24px;
text-align: left;
line-height: 1.4
}

.doc-info tbody tr {
border-bottom: 1px solid #E9E8E8;
transition: background-color .09s ease-in-out
}

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

.doc-info tbody tr:hover {
background-color: #f4fbf7
}

.doc-info td {
padding: 16px 24px;
font-size: 15px;
line-height: 1.65;
color: #2d2d2d;
vertical-align: top
}

.doc-info th {
padding: 16px 24px;
line-height: 1.4
}

.doc-info div {
margin-bottom: 24px
}

@media (max-width: 768px) {
.doc-info {
padding: 40px 24px
}

.doc-info table {
display: block;
overflow-x: auto;
-webkit-overflow-scrolling: touch;
border-radius: 8px
}

.doc-info thead th,
.doc-info td {
padding: 16px
}
}

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

.doc-info p,
.doc-info li,
.doc-info td {
font-size: 13px
}

.doc-info ul,
.doc-info ol {
padding-left: 16px
}
}

.lp-det {
background: #fff;
color: #1e2a1e;
overflow-x: hidden
}

.lp-det__top {
max-width: 1440px;
margin: 0 auto;
padding: 40px 80px 80px;
display: grid;
grid-template-columns: 1fr 420px;
gap: 80px;
align-items: start;
position: relative
}

.lp-det__img-col {
position: relative;
border-radius: 14px;
overflow: hidden;
flex-shrink: 0;
width: 100%;
max-width: 520px
}

.lp-det__img-col::after {
content: "";
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 55%;
background: linear-gradient(to top, #058a3eb8 0%, transparent 100%);
pointer-events: none
}

.lp-det__img-col img {
display: block;
width: 100%;
height: 380px;
object-fit: cover;
object-position: center top
}

.lp-det__bracket--tl,
.lp-det__bracket--br {
position: absolute;
width: 28px;
height: 28px;
z-index: 2;
pointer-events: none
}

.lp-det__bracket--tl {
top: 10px;
left: 10px;
border-top: 3px solid #FB864B;
border-left: 3px solid #FB864B;
border-radius: 8px 0 0 0
}

.lp-det__bracket--br {
bottom: 10px;
right: 10px;
border-bottom: 3px solid #FB864B;
border-right: 3px solid #FB864B;
border-radius: 0 0 8px 0
}

.lp-det__text-col {
display: flex;
flex-direction: column;
gap: 24px;
padding-top: 16px
}

.lp-det__cat {
display: inline-flex;
align-items: center;
gap: 8px;
background: #E9E8E8;
color: #2d4a2d;
font-size: 13px;
line-height: 1.4;
padding: 8px 16px;
border-radius: 48px;
font-weight: 600;
width: fit-content
}

.lp-det__h1 {
font-size: 38px;
line-height: 1.15;
color: #0d1f0d;
margin: 0;
font-weight: 800
}

.lp-det__desc {
font-size: 15px;
line-height: 1.65;
color: #3a4a3a;
margin: 0
}

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

.lp-det__meta-item {
display: flex;
align-items: center;
gap: 8px;
font-size: 13px;
line-height: 1.4;
color: #4a5a4a
}

.lp-det__meta-item svg {
flex-shrink: 0
}

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

.lp-det__price-box {
background: #f4faf6;
border-radius: 14px;
padding: 24px;
display: flex;
flex-direction: column;
gap: 8px;
box-shadow: -1px 2px 5px 0 #058a3e0f
}

.lp-det__price-val {
font-size: 28px;
line-height: 1.15;
font-weight: 800;
color: #058A3E
}

.lp-det__price-note {
font-size: 13px;
line-height: 1.4;
color: #5a6a5a
}

.lp-det__seats {
display: flex;
align-items: center;
gap: 8px;
font-size: 13px;
line-height: 1.4;
color: #c05000;
font-weight: 600
}

.lp-det__btn--primary {
display: inline-block;
background: #058A3E;
color: #fff;
font-size: 15px;
line-height: 1.4;
font-weight: 700;
padding: 16px 40px;
border-radius: 48px;
text-decoration: none;
text-align: center;
border: 2px solid #058A3E;
outline: 2px solid transparent;
outline-offset: 0;
transition: outline-offset .1s cubic-bezier(0.22, 1, 0.36, 1), outline-color .1s cubic-bezier(0.22, 1, 0.36, 1), background .5s ease-in-out;
cursor: pointer
}

.lp-det__btn--primary:hover {
background: #046b30;
outline-color: #058A3E;
outline-offset: 4px
}

.lp-det__btn--primary:active {
box-shadow: inset 0 2px 8px #058a3e4d
}

.lp-det__btn--ghost {
display: inline-block;
background: transparent;
color: #058A3E;
font-size: 15px;
line-height: 1.4;
font-weight: 600;
padding: 14px 40px;
border-radius: 48px;
text-decoration: none;
text-align: center;
border: 2px solid #058A3E;
outline: 2px solid transparent;
outline-offset: 0;
transition: outline-offset .08s cubic-bezier(0.22, 1, 0.36, 1), outline-color .08s cubic-bezier(0.22, 1, 0.36, 1), color .45s ease-in-out
}

.lp-det__btn--ghost:hover {
color: #046b30;
outline-color: #058A3E;
outline-offset: 4px
}

.lp-det__abbr {
position: absolute;
right: -20px;
top: 40px;
font-size: 120px;
font-weight: 900;
color: #058a3e0d;
line-height: 1.15;
pointer-events: none;
user-select: none;
letter-spacing: -4px;
z-index: 0
}

.lp-det__program {
background: #f4faf6;
padding: 80px 0;
position: relative;
overflow: hidden
}

.lp-det__program::before {
content: "";
position: absolute;
inset: 0;
background: radial-gradient(circle at center, #058a3e12 0%, transparent 70%);
pointer-events: none
}

.lp-det__prog-inner {
max-width: 1440px;
margin: 0 auto;
padding: 0 80px;
position: relative;
z-index: 1
}

.lp-det__prog-head {
text-align: center;
margin-bottom: 40px
}

.lp-det__prog-label {
display: inline-block;
background: #058A3E;
color: #fff;
font-size: 13px;
line-height: 1.4;
padding: 8px 24px;
border-radius: 8px;
font-weight: 700;
margin-bottom: 16px
}

.lp-det__prog-h2 {
font-size: 28px;
line-height: 1.15;
color: #0d1f0d;
margin: 0;
font-weight: 700;
text-align: center
}

.lp-det__milestone {
display: flex;
flex-direction: row;
gap: 0;
align-items: flex-start;
overflow-x: auto;
padding-bottom: 16px;
scrollbar-width: thin;
scrollbar-color: #058A3E #E9E8E8
}

.lp-det__ms-item {
flex: 1;
min-width: 160px;
display: flex;
flex-direction: column;
align-items: center;
position: relative
}

.lp-det__ms-item:not(:last-child)::after {
content: "";
position: absolute;
top: 20px;
left: 50%;
width: 100%;
height: 2px;
background: #E9E8E8;
z-index: 0
}

.lp-det__ms-dot {
width: 40px;
height: 40px;
border-radius: 48px;
background: #fff;
border: 3px solid #058A3E;
display: flex;
align-items: center;
justify-content: center;
z-index: 1;
transition: background .5s ease-in-out, border-color .5s ease-in-out;
flex-shrink: 0
}

.lp-det__ms-item:hover .lp-det__ms-dot {
background: #058A3E
}

.lp-det__ms-item:hover .lp-det__ms-dot svg {
stroke: #fff
}

.lp-det__ms-dot svg {
stroke: #058A3E;
transition: stroke .5s ease-in-out
}

.lp-det__ms-body {
text-align: center;
padding: 16px 8px 0
}

.lp-det__ms-title {
font-size: 13px;
line-height: 1.4;
font-weight: 700;
color: #0d1f0d;
margin: 0 0 8px
}

.lp-det__ms-text {
font-size: 13px;
line-height: 1.65;
color: #4a5a4a;
margin: 0
}

.lp-det__prog-content {
margin-top: 40px;
background: #fff;
border-radius: 14px;
padding: 40px;
box-shadow: -1px 6px 20px 0 #058a3e1a
}

.lp-det__prog-content h2 {
font-size: 21px;
line-height: 1.4;
color: #058A3E;
font-weight: 700;
margin: 0 0 16px
}

.lp-det__prog-content p {
font-size: 15px;
line-height: 1.65;
color: #3a4a3a;
margin: 0 0 16px
}

.lp-det__prog-content small {
font-size: 13px;
line-height: 1.4;
color: #6a7a6a
}

.lp-det__prog-content ul {
margin: 0 0 16px;
padding-left: 24px
}

.lp-det__prog-content li {
font-size: 15px;
line-height: 1.65;
color: #3a4a3a;
margin-bottom: 8px
}

.lp-det__prog-content dl {
margin: 0 0 16px
}

.lp-det__prog-content dt {
font-size: 15px;
line-height: 1.4;
font-weight: 700;
color: #0d1f0d;
margin-top: 16px
}

.lp-det__prog-content dd {
font-size: 15px;
line-height: 1.65;
color: #3a4a3a;
margin-left: 24px
}

.lp-det__prog-content blockquote {
border-top: 2px solid #058A3E;
border-bottom: 2px solid #058A3E;
margin: 24px 0;
padding: 16px 24px;
font-size: 15px;
line-height: 1.65;
color: #2d4a2d;
font-style: italic
}

.lp-det__full {
max-width: 1440px;
margin: 0 auto;
padding: 80px;
display: grid;
grid-template-columns: 220px 1fr;
gap: 80px;
align-items: start
}

.lp-det__aside {
display: flex;
flex-direction: column;
gap: 24px;
position: sticky;
top: 24px
}

.lp-det__aside-note {
background: #E9E8E8;
border-radius: 14px;
padding: 24px
}

.lp-det__aside-note-label {
font-size: 13px;
line-height: 1.4;
font-weight: 700;
color: #058A3E;
margin: 0 0 8px;
text-transform: uppercase;
letter-spacing: .5px
}

.lp-det__aside-note p {
font-size: 13px;
line-height: 1.65;
color: #3a4a3a;
margin: 0
}

.lp-det__stat {
background: #058A3E;
border-radius: 14px;
padding: 24px;
display: flex;
flex-direction: column;
gap: 8px
}

.lp-det__stat-num {
font-size: 38px;
line-height: 1.15;
font-weight: 900;
color: #fff
}

.lp-det__stat-lbl {
font-size: 13px;
line-height: 1.4;
color: #fffc
}

.lp-det__body {
display: flex;
flex-direction: column;
gap: 24px
}

.lp-det__body-wrap h2 {
font-size: 21px;
line-height: 1.4;
color: #0d1f0d;
font-weight: 700;
background: #E9E8E8;
display: inline-block;
padding: 8px 16px;
border-radius: 8px;
margin: 0 0 16px
}

.lp-det__body-wrap h3 {
font-size: 15px;
line-height: 1.4;
font-weight: 700;
color: #058A3E;
margin: 0 0 8px
}

.lp-det__body-wrap p {
font-size: 15px;
line-height: 1.65;
color: #3a4a3a;
margin: 0 0 16px
}

.lp-det__body-wrap strong {
color: #0d1f0d;
font-weight: 700
}

.lp-det__body-wrap small {
font-size: 13px;
line-height: 1.4;
color: #6a7a6a;
display: block;
margin-bottom: 8px
}

.lp-det__body-wrap ul {
margin: 0 0 16px;
padding-left: 24px
}

.lp-det__body-wrap li {
font-size: 15px;
line-height: 1.65;
color: #3a4a3a;
margin-bottom: 8px
}

.lp-det__body-wrap dl {
margin: 0 0 16px
}

.lp-det__body-wrap dt {
font-size: 15px;
line-height: 1.4;
font-weight: 700;
color: #0d1f0d;
margin-top: 16px
}

.lp-det__body-wrap dd {
font-size: 15px;
line-height: 1.65;
color: #3a4a3a;
margin-left: 24px
}

.lp-det__body-wrap blockquote {
border-top: 2px solid #FB864B;
border-bottom: 2px solid #FB864B;
margin: 24px 0;
padding: 16px 24px;
font-size: 15px;
line-height: 1.65;
color: #2d4a2d;
font-style: italic
}

.lp-det__body-wrap figure {
margin: 24px 0
}

.lp-det__body-wrap figcaption {
font-size: 13px;
line-height: 1.4;
color: #6a7a6a;
margin-top: 8px;
text-align: center
}

.lp-det__like-row {
display: flex;
align-items: center;
gap: 8px;
margin-top: 8px
}

.lp-det__like-count {
font-size: 15px;
line-height: 1.4;
color: #4a5a4a;
font-weight: 600
}

.lp-det__link-pill {
display: inline-block;
position: relative;
font-size: 15px;
line-height: 1.4;
color: #058A3E;
text-decoration: none;
font-weight: 600;
padding: 4px 8px;
border-radius: 8px;
overflow: hidden;
transition: color .5s ease-in-out
}

.lp-det__link-pill::before {
content: "";
position: absolute;
inset: 0;
background: #058A3E;
border-radius: 8px;
transform: scaleX(0);
transform-origin: left;
transition: transform .5s cubic-bezier(0.22, 1, 0.36, 1);
z-index: 0
}

.lp-det__link-pill:hover {
color: #fff
}

.lp-det__link-pill:hover::before {
transform: scaleX(1)
}

.lp-det__link-pill span {
position: relative;
z-index: 1
}

.lp-det__cta-band {
background: #0d1f0d;
padding: 80px;
position: relative;
overflow: hidden
}

.lp-det__cta-band::before {
content: "";
position: absolute;
inset: 0;
background: radial-gradient(circle at center, #058a3e38 0%, transparent 65%);
pointer-events: none
}

.lp-det__cta-tri {
position: absolute;
inset: 0;
pointer-events: none;
overflow: hidden
}

.lp-det__cta-tri svg {
position: absolute;
opacity: .06;
bottom: -20px;
right: -20px
}

.lp-det__cta-inner {
max-width: 1440px;
margin: 0 auto;
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
gap: 40px;
position: relative;
z-index: 1
}

.lp-det__cta-text {
flex: 1
}

.lp-det__cta-h2 {
font-size: 28px;
line-height: 1.15;
color: #fff;
font-weight: 800;
margin: 0 0 16px
}

.lp-det__cta-p {
font-size: 15px;
line-height: 1.65;
color: #ffffffbf;
margin: 0
}

.lp-det__cta-btns {
display: flex;
flex-direction: column;
gap: 16px;
flex-shrink: 0
}

.lp-det__btn--light {
display: inline-block;
background: #fff;
color: #058A3E;
font-size: 15px;
line-height: 1.4;
font-weight: 700;
padding: 16px 40px;
border-radius: 48px;
text-decoration: none;
text-align: center;
border: 2px solid #fff;
outline: 2px solid transparent;
outline-offset: 0;
transition: outline-offset .1s cubic-bezier(0.22, 1, 0.36, 1), outline-color .1s cubic-bezier(0.22, 1, 0.36, 1)
}

.lp-det__btn--light:hover {
outline-color: #fff;
outline-offset: 4px
}

.lp-det__btn--outline-light {
display: inline-block;
background: transparent;
color: #fff;
font-size: 15px;
line-height: 1.4;
font-weight: 600;
padding: 14px 40px;
border-radius: 48px;
text-decoration: none;
text-align: center;
border: 2px solid #ffffff80;
outline: 2px solid transparent;
outline-offset: 0;
transition: outline-offset .08s cubic-bezier(0.22, 1, 0.36, 1), outline-color .08s cubic-bezier(0.22, 1, 0.36, 1), border-color .45s ease-in-out
}

.lp-det__btn--outline-light:hover {
border-color: #fff;
outline-color: #fff6;
outline-offset: 4px
}

.lp-det__top-anchor {
display: flex;
justify-content: center;
padding: 24px 0 40px;
background: #fff
}

.lp-det__top-link {
display: inline-flex;
align-items: center;
gap: 8px;
font-size: 13px;
line-height: 1.4;
color: #058A3E;
text-decoration: none;
font-weight: 600;
padding: 8px 24px;
border-radius: 48px;
border: 2px solid #E9E8E8;
transition: border-color .5s ease-in-out, color .5s ease-in-out
}

.lp-det__top-link:hover {
border-color: #058A3E;
color: #046b30
}

.lp-det__icon-spin {
display: inline-flex;
animation: lp-settle .7s cubic-bezier(0.22, 1, 0.36, 1) .3s both
}

@keyframes lp-settle {
0% {
transform: rotate(-180deg)
}

80% {
transform: rotate(10deg)
}

100% {
transform: rotate(0deg)
}
}

@media (max-width: 1024px) {
.lp-det__top {
grid-template-columns: 1fr;
padding: 40px 40px 80px;
gap: 40px
}

.lp-det__img-col {
max-width: 100%
}

.lp-det__abbr {
display: none
}

.lp-det__prog-inner {
padding: 0 40px
}

.lp-det__full {
grid-template-columns: 1fr;
padding: 80px 40px;
gap: 40px
}

.lp-det__aside {
position: static;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 16px
}

.lp-det__cta-band {
padding: 80px 40px
}

.lp-det__cta-inner {
flex-direction: column;
align-items: flex-start
}
}

@media (max-width: 768px) {
.lp-det__top {
padding: 24px 24px 40px
}

.lp-det__h1 {
font-size: 28px
}

.lp-det__prog-inner {
padding: 0 24px
}

.lp-det__prog-content {
padding: 24px
}

.lp-det__full {
padding: 40px 24px
}

.lp-det__aside {
grid-template-columns: 1fr
}

.lp-det__cta-band {
padding: 40px 24px
}

.lp-det__cta-h2 {
font-size: 21px
}

.lp-det__milestone {
flex-direction: column;
gap: 24px
}

.lp-det__ms-item::after {
display: none
}

.lp-det__ms-item {
flex-direction: row;
align-items: flex-start;
gap: 16px;
min-width: unset
}

.lp-det__ms-body {
text-align: left;
padding: 0
}
}

@media (max-width: 480px) {
.lp-det__top {
padding: 16px 16px 40px
}

.lp-det__prog-inner {
padding: 0 16px
}

.lp-det__full {
padding: 40px 16px
}

.lp-det__cta-band {
padding: 40px 16px
}

.lp-det__cta-btns {
width: 100%
}

.lp-det__btn--light,
.lp-det__btn--outline-light {
text-align: center
}
}

.tr-acc {
max-width: 1440px;
margin: 0 auto;
overflow-x: clip;
background: #fff
}

.tr-acc ::selection {
background: #FB864B;
color: #fff
}

.tr-acc .dec-strokes {
position: absolute;
top: 40px;
right: 40px;
display: flex;
flex-direction: column;
gap: 8px;
pointer-events: none;
z-index: 0
}

.tr-acc .dec-strokes span {
display: block;
height: 2px;
background: #058A3E;
opacity: .18;
border-radius: 8px
}

.tr-acc .dec-strokes span:nth-child(1) {
width: 48px
}

.tr-acc .dec-strokes span:nth-child(2) {
width: 32px
}

.tr-acc .dec-strokes span:nth-child(3) {
width: 40px
}

.tr-acc .dec-strokes span:nth-child(4) {
width: 24px
}

.tr-acc .tb {
position: relative;
padding: 80px 40px;
display: flex;
flex-direction: column;
align-items: center;
text-align: center;
background: #fff
}

.tr-acc .tb::before {
content: "";
position: absolute;
inset: 0;
background: radial-gradient(circle at 50% 50%, #058a3e17 0%, #058a3e05 55%, transparent 80%);
pointer-events: none;
animation: bgwash 7s ease-in-out infinite alternate
}

@keyframes bgwash {
0% {
opacity: .6
}

100% {
opacity: 1
}
}

.tr-acc .tb__frame {
position: absolute;
inset: 24px;
border: 1px solid #058a3e21;
border-radius: 14px;
pointer-events: none
}

.tr-acc .tb__col {
position: relative;
z-index: 1;
max-width: 620px
}

.tr-acc .tb__label {
display: inline-block;
font-size: 13px;
line-height: 1.4;
color: #058A3E;
background: #058a3e14;
border-radius: 48px;
padding: 8px 16px;
margin-bottom: 24px;
font-weight: 600;
letter-spacing: .04em;
text-transform: uppercase
}

.tr-acc .tb__h1 {
font-size: 50px;
line-height: 1.15;
color: #111;
margin: 0 0 24px;
font-weight: 800
}

.tr-acc .tb__h1 em {
font-style: normal;
color: #058A3E
}

.tr-acc .tb__desc {
font-size: 21px;
line-height: 1.65;
color: #3a3a3a;
margin: 0 0 40px
}

.tr-acc .tb__cta {
display: inline-block;
font-size: 15px;
font-weight: 700;
color: #fff;
background: #058A3E;
padding: 16px 40px;
border-radius: 8px;
text-decoration: none;
border: 2px solid #058A3E;
transition: background .5s cubic-bezier(0.22, 1, 0.36, 1), color .5s cubic-bezier(0.22, 1, 0.36, 1), box-shadow .45s ease-in-out, outline-offset .12s ease-in-out;
outline: 2px solid transparent;
outline-offset: 0;
box-shadow: -1px 6px 20px 0 #058a3e1a
}

.tr-acc .tb__cta:hover {
background: #046b30;
box-shadow: -1px 9px 52px 0 #058a3e1a;
outline: 2px solid #058A3E;
outline-offset: 4px
}

.tr-acc .tb__cta:active {
box-shadow: inset -1px 2px 5px 0 #058a3e2e
}

.tr-acc .wh span {
transition: color .6s ease-in-out, background .6s ease-in-out;
border-radius: 8px;
padding: 0 4px
}

.tr-acc .wh span.lit {
color: #fff;
background: #FB864B
}

.tr-acc .wave-div {
display: block;
width: 100%;
line-height: 0;
overflow: hidden
}

.tr-acc .wave-div svg {
display: block;
width: 100%
}

.tr-acc .about {
background: #f4faf6;
padding: 80px 40px;
position: relative
}

.tr-acc .about__grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 80px;
max-width: 1100px;
margin: 0 auto;
align-items: center
}

.tr-acc .about__img-wrap {
position: relative;
border-radius: 14px;
overflow: hidden;
box-shadow: -1px 6px 20px 0 #058a3e1a
}

.tr-acc .about__img-wrap img {
display: block;
width: 100%;
height: 420px;
object-fit: cover;
object-position: center top;
transition: transform .6s cubic-bezier(0.22, 1, 0.36, 1)
}

.tr-acc .about__img-wrap:hover img {
transform: scale(1.04)
}

.tr-acc .about__caption {
position: absolute;
bottom: 0;
left: 0;
right: 0;
background: #058a3ee0;
color: #fff;
font-size: 15px;
line-height: 1.4;
padding: 16px 24px;
transform: translateY(100%);
transition: transform .5s cubic-bezier(0.22, 1, 0.36, 1)
}

.tr-acc .about__img-wrap:hover .about__caption {
transform: translateY(0)
}

.tr-acc .about__dot-icon {
position: absolute;
top: 16px;
right: 16px;
width: 36px;
height: 36px;
background: #fff;
border-radius: 48px;
display: flex;
align-items: center;
justify-content: center;
box-shadow: -1px 2px 5px 0 #058a3e0f
}

.tr-acc .about__dot-icon .gg-trending {
--ggs: .8;
color: #058A3E
}

.tr-acc .about__dot {
position: absolute;
top: 12px;
right: 12px;
width: 10px;
height: 10px;
background: #FB864B;
border-radius: 48px;
border: 2px solid #fff
}

.tr-acc .about__text {
display: flex;
flex-direction: column;
gap: 24px
}

.tr-acc .about__strip {
display: inline-block;
background: #058A3E;
padding: 8px 16px;
border-radius: 8px;
align-self: flex-start
}

.tr-acc .about__strip h2 {
font-size: 28px;
line-height: 1.15;
color: #fff;
margin: 0;
font-weight: 700
}

.tr-acc .about__aside-wrap {
display: flex;
flex-direction: row;
gap: 24px;
align-items: flex-start
}

.tr-acc .about__aside {
min-width: 80px;
text-align: right
}

.tr-acc .about__stat-num {
font-size: 38px;
line-height: 1.15;
font-weight: 800;
color: #058A3E;
display: block
}

.tr-acc .about__stat-lbl {
font-size: 13px;
line-height: 1.4;
color: #666;
display: block
}

.tr-acc .about__body {
flex: 1
}

.tr-acc .about__p {
font-size: 15px;
line-height: 1.65;
color: #2e2e2e;
margin: 0
}

.tr-acc .about__badges {
display: flex;
flex-direction: row;
flex-wrap: wrap;
gap: 8px;
margin-top: 8px
}

.tr-acc .about__badge {
font-size: 13px;
line-height: 1.4;
color: #058A3E;
background: #058a3e17;
border-radius: 48px;
padding: 8px 16px;
font-weight: 600
}

.tr-acc .about__link {
display: inline-block;
font-size: 15px;
font-weight: 700;
color: #058A3E;
text-decoration: none;
background: #058a3e00;
border-radius: 48px;
padding: 8px 16px;
transition: background .45s cubic-bezier(0.22, 1, 0.36, 1), color .45s cubic-bezier(0.22, 1, 0.36, 1);
align-self: flex-start;
position: relative;
overflow: hidden
}

.tr-acc .about__link::before {
content: "";
position: absolute;
inset: 0;
background: #058a3e1a;
border-radius: 48px;
transform: scaleX(0);
transform-origin: left;
transition: transform .45s cubic-bezier(0.22, 1, 0.36, 1)
}

.tr-acc .about__link:hover::before {
transform: scaleX(1)
}

.tr-acc .wave-div--inv svg {
transform: scaleY(-1)
}

.tr-acc .steps {
background: #0a2e1a;
padding: 80px 40px;
position: relative;
overflow: hidden
}

.tr-acc .steps::before {
content: "";
position: absolute;
inset: 0;
background: radial-gradient(circle at 50% 50%, #058a3e47 0%, transparent 70%);
pointer-events: none;
animation: bgwash 9s ease-in-out infinite alternate
}

.tr-acc .steps__inner {
position: relative;
z-index: 1;
max-width: 860px;
margin: 0 auto
}

.tr-acc .steps__strip {
display: inline-block;
background: #FB864B;
padding: 8px 16px;
border-radius: 8px;
margin-bottom: 24px
}

.tr-acc .steps__strip h2 {
font-size: 28px;
line-height: 1.15;
color: #fff;
margin: 0;
font-weight: 700
}

.tr-acc .steps__sub {
font-size: 21px;
line-height: 1.65;
color: #ffffffbf;
margin: 0 0 40px;
text-align: left
}

.tr-acc .steps__list {
display: flex;
flex-direction: column;
gap: 24px;
list-style: none;
padding: 0;
margin: 0 0 40px
}

.tr-acc .steps__item {
display: flex;
flex-direction: row;
gap: 24px;
align-items: flex-start;
background: #ffffff0d;
border-radius: 14px;
padding: 24px;
border: 1px solid #ffffff14;
transition: background .5s cubic-bezier(0.22, 1, 0.36, 1), border-color .5s cubic-bezier(0.22, 1, 0.36, 1)
}

.tr-acc .steps__item:hover {
background: #ffffff17;
border-color: #058a3e66
}

.tr-acc .steps__num {
font-size: 38px;
line-height: 1.15;
font-weight: 800;
color: #058A3E;
min-width: 48px;
flex-shrink: 0
}

.tr-acc .steps__item-body {
flex: 1
}

.tr-acc .steps__item-h {
font-size: 21px;
line-height: 1.4;
color: #fff;
font-weight: 700;
margin: 0 0 8px
}

.tr-acc .steps__item-p {
font-size: 15px;
line-height: 1.65;
color: #ffffffa6;
margin: 0
}

.tr-acc .steps__tags {
display: flex;
flex-direction: row;
flex-wrap: wrap;
gap: 8px;
margin-top: 8px
}

.tr-acc .steps__tag {
font-size: 13px;
line-height: 1.4;
color: #FB864B;
background: #fb864b1f;
border-radius: 48px;
padding: 8px 16px;
font-weight: 600
}

.tr-acc .steps__cta-wrap {
display: flex;
flex-direction: row;
align-items: center;
gap: 24px;
flex-wrap: wrap
}

.tr-acc .steps__btn {
display: inline-block;
font-size: 15px;
font-weight: 700;
color: #0a2e1a;
background: #FB864B;
padding: 16px 40px;
border-radius: 8px;
text-decoration: none;
border: 2px solid #FB864B;
transition: background .5s cubic-bezier(0.22, 1, 0.36, 1), color .5s cubic-bezier(0.22, 1, 0.36, 1), outline-offset .1s ease-in-out;
outline: 2px solid transparent;
outline-offset: 0;
box-shadow: -1px 6px 20px 0 #fb864b1a
}

.tr-acc .steps__btn:hover {
background: #e86e2e;
border-color: #e86e2e;
outline: 2px solid #FB864B;
outline-offset: 4px
}

.tr-acc .steps__btn:active {
box-shadow: inset -1px 2px 5px 0 #fb864b2e
}

.tr-acc .steps__note {
font-size: 13px;
line-height: 1.65;
color: #ffffff73;
margin: 0
}

.tr-acc .steps__dec {
position: absolute;
bottom: 40px;
left: 40px;
display: flex;
flex-direction: column;
gap: 8px;
pointer-events: none
}

.tr-acc .steps__dec span {
display: block;
height: 2px;
background: #058A3E;
opacity: .22;
border-radius: 8px
}

.tr-acc .steps__dec span:nth-child(1) {
width: 56px
}

.tr-acc .steps__dec span:nth-child(2) {
width: 36px
}

.tr-acc .steps__dec span:nth-child(3) {
width: 48px
}

.tr-acc .steps__dec span:nth-child(4) {
width: 28px
}

@media (max-width: 1024px) {
.tr-acc .tb__h1 {
font-size: 38px
}

.tr-acc .about__grid {
grid-template-columns: 1fr;
gap: 40px
}

.tr-acc .about__img-wrap img {
height: 340px
}
}

@media (max-width: 768px) {
.tr-acc .tb {
padding: 80px 24px
}

.tr-acc .tb__h1 {
font-size: 28px
}

.tr-acc .tb__desc {
font-size: 15px
}

.tr-acc .about {
padding: 80px 24px
}

.tr-acc .steps {
padding: 80px 24px
}

.tr-acc .about__aside-wrap {
flex-direction: column;
gap: 8px
}

.tr-acc .about__aside {
text-align: left;
min-width: unset
}

.tr-acc .steps__item {
flex-direction: column;
gap: 8px
}
}

@media (max-width: 480px) {
.tr-acc .tb__frame {
inset: 12px
}

.tr-acc .tb__h1 {
font-size: 21px
}

.tr-acc .steps__num {
font-size: 28px
}

.tr-acc .steps__cta-wrap {
flex-direction: column;
align-items: flex-start
}

.tr-acc .dec-strokes {
display: none
}
}

.lp {
max-width: 1440px;
margin: 0 auto;
overflow: hidden
}

.lp__load-reveal {
animation: lpBlurIn .6s cubic-bezier(0.22, 1, 0.36, 1) both
}

@keyframes lpBlurIn {
from {
opacity: 0;
filter: blur(8px)
}

to {
opacity: 1;
filter: blur(0)
}
}

.lp__hero {
position: relative;
padding: 80px 80px 40px;
background: #f4f7f4;
overflow: hidden
}

.lp__hero-pattern {
position: absolute;
inset: 0;
pointer-events: none;
z-index: 0
}

.lp__hero-wave {
position: absolute;
bottom: -2px;
left: 0;
width: 100%;
z-index: 1;
pointer-events: none
}

.lp__hero-leak {
position: absolute;
top: -40px;
right: -40px;
width: 320px;
height: 320px;
background: radial-gradient(circle at 80% 20%, #058a3e2e 0%, #058a3e0a 60%, transparent 80%);
pointer-events: none;
z-index: 0
}

.lp__hero-body {
position: relative;
z-index: 2;
max-width: 700px
}

.lp__hero-pre {
font-size: 13px;
line-height: 1.4;
color: #058A3E;
letter-spacing: .04em;
text-transform: uppercase;
margin-bottom: 16px;
font-weight: 600
}

.lp__hero-h1 {
font-size: 50px;
line-height: 1.15;
color: #111;
margin-bottom: 16px
}

.lp__hero-h1 span {
background: #058A3E;
color: #fff;
padding: 0 12px;
border-radius: 8px;
display: inline
}

.lp__hero-sub {
font-size: 21px;
line-height: 1.4;
color: #333;
margin-bottom: 24px;
max-width: 520px
}

.lp__hero-meta {
display: flex;
flex-direction: row;
gap: 24px;
align-items: center
}

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

.lp__hero-stat-num {
font-size: 38px;
line-height: 1.15;
color: #058A3E;
font-weight: 700
}

.lp__hero-stat-label {
font-size: 13px;
line-height: 1.4;
color: #555
}

.lp__hero-divider {
width: 1px;
height: 48px;
background: #ccc
}

.lp__cards-section {
padding: 80px;
background: #fff;
position: relative
}

.lp__cards-offset {
margin-left: 40px
}

.lp__section-label {
display: inline-block;
background: #058A3E;
color: #fff;
font-size: 13px;
line-height: 1.4;
padding: 8px 16px;
border-radius: 8px;
margin-bottom: 24px;
font-weight: 600
}

.lp__cards-h2 {
font-size: 38px;
line-height: 1.15;
color: #111;
margin-bottom: 8px;
text-align: center
}

.lp__cards-sub {
font-size: 15px;
line-height: 1.65;
color: #444;
margin-bottom: 40px;
text-align: left;
max-width: 600px
}

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

.lp__card {
border-radius: 14px;
background: #fff;
box-shadow: -1px 6px 20px 0 #058a3e1a;
overflow: hidden;
display: flex;
flex-direction: column;
transition: box-shadow .5s cubic-bezier(0.22, 1, 0.36, 1), transform .5s cubic-bezier(0.22, 1, 0.36, 1)
}

.lp__card:hover {
box-shadow: -1px 9px 52px 0 #058a3e1a;
transform: translateY(-4px)
}

.lp__card-img-wrap {
position: relative;
width: 100%;
aspect-ratio: 16/9;
overflow: hidden
}

.lp__card-img-wrap img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
transition: transform .6s cubic-bezier(0.22, 1, 0.36, 1)
}

.lp__card:hover .lp__card-img-wrap img {
transform: scale(1.04)
}

.lp__card-caption {
position: absolute;
inset: 0;
background: #058a3ed1;
color: #fff;
font-size: 13px;
line-height: 1.65;
padding: 16px;
display: flex;
align-items: flex-end;
opacity: 0;
transition: opacity .45s cubic-bezier(0.22, 1, 0.36, 1)
}

.lp__card:hover .lp__card-caption {
opacity: 1
}

.lp__card-tag {
display: inline-block;
background: #E9E8E8;
color: #333;
font-size: 13px;
line-height: 1.4;
padding: 4px 12px;
border-radius: 48px;
margin: 16px 16px 8px;
font-weight: 500
}

.lp__card-body {
padding: 0 16px 16px;
flex: 1;
display: flex;
flex-direction: column
}

.lp__card-h3 {
font-size: 21px;
line-height: 1.4;
color: #111;
margin-bottom: 8px
}

.lp__card-desc {
font-size: 13px;
line-height: 1.65;
color: #555;
margin-bottom: 16px;
flex: 1
}

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

.lp__card-readtime {
font-size: 13px;
color: #777;
display: flex;
align-items: center;
gap: 8px
}

.lp__card-likes {
font-size: 13px;
color: #777;
display: flex;
align-items: center;
gap: 8px
}

.lp__card-seats {
font-size: 13px;
color: #FB864B;
font-weight: 600
}

.lp__card-footer {
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
gap: 8px;
border-top: 1px solid #E9E8E8;
padding-top: 16px
}

.lp__card-price-wrap {
display: flex;
flex-direction: column;
gap: 4px
}

.lp__card-price {
font-size: 21px;
line-height: 1.15;
color: #058A3E;
font-weight: 700
}

.lp__card-pricedes {
font-size: 13px;
line-height: 1.4;
color: #888
}

.lp__card-btn {
display: inline-block;
background: #058A3E;
color: #fff;
font-size: 15px;
line-height: 1.4;
padding: 8px 24px;
border-radius: 48px;
text-decoration: none;
font-weight: 600;
border: 2px solid #058A3E;
transition: background .45s cubic-bezier(0.22, 1, 0.36, 1), color .45s cubic-bezier(0.22, 1, 0.36, 1), outline-offset .12s ease-in-out, outline .12s ease-in-out;
outline: 2px solid transparent;
outline-offset: 0
}

.lp__card-btn:hover {
background: #fff;
color: #058A3E;
outline: 2px solid #058A3E;
outline-offset: 3px
}

.lp__card-btn:active {
box-shadow: inset 0 2px 6px 0 #058a3e2e
}

.lp__divider-asym {
display: flex;
flex-direction: row;
align-items: center;
gap: 8px;
padding: 0 80px;
margin: 0
}

.lp__divider-asym-long {
flex: 3;
height: 2px;
background: #E9E8E8;
border-radius: 8px
}

.lp__divider-asym-short {
flex: 1;
height: 2px;
background: #058A3E;
border-radius: 8px;
opacity: .35
}

.lp__instructors {
padding: 80px 80px 80px 40px;
background: #f4f7f4;
position: relative
}

.lp__instructors-h2 {
font-size: 38px;
line-height: 1.15;
color: #111;
margin-bottom: 8px;
text-align: center
}

.lp__instructors-intro {
font-size: 15px;
line-height: 1.65;
color: #444;
margin-bottom: 40px;
text-align: left;
max-width: 560px
}

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

.lp__instructor-card {
background: #fff;
border-radius: 14px;
box-shadow: -1px 2px 5px 0 #058a3e0f;
padding: 24px 16px;
display: flex;
flex-direction: column;
align-items: center;
gap: 16px;
transition: box-shadow .5s cubic-bezier(0.22, 1, 0.36, 1)
}

.lp__instructor-card:hover {
box-shadow: -1px 6px 20px 0 #058a3e1a
}

.lp__instructor-img-wrap {
width: 96px;
height: 120px;
border-radius: 14px;
overflow: hidden;
flex-shrink: 0
}

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

.lp__instructor-name {
font-size: 15px;
line-height: 1.4;
color: #111;
font-weight: 700;
text-align: center
}

.lp__instructor-role {
font-size: 13px;
line-height: 1.4;
color: #058A3E;
text-align: center
}

.lp__instructor-bio {
font-size: 13px;
line-height: 1.65;
color: #555;
text-align: center
}

.lp__chart-section {
padding: 80px 80px 80px 120px;
background: #032e18;
position: relative;
overflow: hidden
}

.lp__chart-bg-glow {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 600px;
height: 600px;
background: radial-gradient(circle at center, #058a3e38 0%, transparent 70%);
pointer-events: none;
z-index: 0
}

.lp__chart-body {
position: relative;
z-index: 1;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 80px;
align-items: center
}

.lp__chart-text h2 {
font-size: 38px;
line-height: 1.15;
color: #fff;
margin-bottom: 16px
}

.lp__chart-text h2 span {
background: #FB864B;
color: #fff;
padding: 0 10px;
border-radius: 8px
}

.lp__chart-text p {
font-size: 15px;
line-height: 1.65;
color: #aac9b8;
margin-bottom: 24px
}

.lp__chart-aside {
font-size: 13px;
line-height: 1.85;
color: #7ab89a;
border-top: 1px solid #ffffff1a;
padding-top: 16px
}

.lp__chart-visual {
display: flex;
flex-direction: column;
align-items: center;
gap: 24px
}

.lp__donut-wrap {
position: relative;
width: 200px;
height: 200px
}

.lp__donut-label {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
text-align: center
}

.lp__donut-label-num {
font-size: 28px;
line-height: 1.15;
color: #fff;
font-weight: 700;
display: block
}

.lp__donut-label-desc {
font-size: 13px;
line-height: 1.4;
color: #7ab89a;
display: block
}

.lp__donut-legend {
display: flex;
flex-direction: column;
gap: 8px;
width: 100%
}

.lp__donut-legend-item {
display: flex;
flex-direction: row;
align-items: center;
gap: 8px;
font-size: 13px;
color: #aac9b8
}

.lp__donut-legend-dot {
width: 12px;
height: 12px;
border-radius: 48px;
flex-shrink: 0
}

.lp__path-section {
padding: 80px;
background: #fff;
position: relative
}

.lp__path-offset {
margin-right: 40px
}

.lp__path-h2 {
font-size: 38px;
line-height: 1.15;
color: #111;
margin-bottom: 8px;
text-align: center
}

.lp__path-sub {
font-size: 15px;
line-height: 1.65;
color: #444;
margin-bottom: 40px;
text-align: left;
max-width: 520px
}

.lp__path-layout {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 40px;
align-items: start
}

.lp__path-steps {
display: flex;
flex-direction: column;
gap: 24px;
position: relative
}

.lp__path-dashed {
position: absolute;
left: 20px;
top: 40px;
bottom: 40px;
width: 2px;
border-left: 2px dashed #058a3e4d;
pointer-events: none;
z-index: 0
}

.lp__step {
display: flex;
flex-direction: row;
gap: 16px;
align-items: flex-start;
position: relative;
z-index: 1
}

.lp__step-num {
width: 40px;
height: 40px;
border-radius: 48px;
background: #058A3E;
color: #fff;
font-size: 15px;
font-weight: 700;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0
}

.lp__step-content {
flex: 1
}

.lp__step-h4 {
font-size: 15px;
line-height: 1.4;
color: #111;
font-weight: 700;
margin-bottom: 8px
}

.lp__step-p {
font-size: 13px;
line-height: 1.65;
color: #555
}

.lp__path-aside {
background: #f4f7f4;
border-radius: 14px;
padding: 40px;
display: flex;
flex-direction: column;
gap: 24px
}

.lp__path-aside-h3 {
font-size: 21px;
line-height: 1.4;
color: #111;
font-weight: 700
}

.lp__path-aside-p {
font-size: 15px;
line-height: 1.65;
color: #444
}

.lp__path-aside-stat {
display: flex;
flex-direction: row;
gap: 16px;
align-items: center
}

.lp__path-aside-num {
font-size: 38px;
line-height: 1.15;
color: #FB864B;
font-weight: 700
}

.lp__path-aside-note {
font-size: 13px;
line-height: 1.65;
color: #555
}

.lp__path-cta {
display: inline-block;
background: #FB864B;
color: #fff;
font-size: 15px;
line-height: 1.4;
padding: 16px 40px;
border-radius: 48px;
text-decoration: none;
font-weight: 600;
border: 2px solid #FB864B;
transition: background .5s cubic-bezier(0.22, 1, 0.36, 1), color .5s cubic-bezier(0.22, 1, 0.36, 1), outline-offset .1s ease-in-out, outline .1s ease-in-out;
outline: 2px solid transparent;
outline-offset: 0;
align-self: flex-start
}

.lp__path-cta:hover {
background: #fff;
color: #FB864B;
outline: 2px solid #FB864B;
outline-offset: 3px
}

.lp__path-cta:active {
box-shadow: inset 0 2px 6px 0 #fb864b2e
}

.lp__card--wide {
grid-column: span 2;
flex-direction: row
}

.lp__card--wide .lp__card-img-wrap {
width: 280px;
min-width: 280px;
aspect-ratio: unset;
height: auto
}

.lp__card--wide .lp__card-body {
flex: 1
}

@media (max-width: 1024px) {
.lp__hero {
padding: 40px
}

.lp__cards-section {
padding: 40px
}

.lp__cards-offset {
margin-left: 0
}

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

.lp__card--wide {
grid-column: span 2;
flex-direction: column
}

.lp__card--wide .lp__card-img-wrap {
width: 100%;
min-width: unset;
aspect-ratio: 16/9;
height: auto
}

.lp__instructors {
padding: 40px
}

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

.lp__chart-section {
padding: 40px
}

.lp__chart-body {
grid-template-columns: 1fr;
gap: 40px
}

.lp__path-section {
padding: 40px
}

.lp__path-offset {
margin-right: 0
}

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

.lp__divider-asym {
padding: 0 40px
}
}

@media (max-width: 768px) {
.lp__hero {
padding: 40px 24px
}

.lp__hero-h1 {
font-size: 38px
}

.lp__hero-meta {
flex-direction: column;
align-items: flex-start;
gap: 16px
}

.lp__hero-divider {
width: 48px;
height: 1px
}

.lp__cards-section {
padding: 40px 24px
}

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

.lp__card--wide {
grid-column: span 1;
flex-direction: column
}

.lp__card--wide .lp__card-img-wrap {
width: 100%;
min-width: unset;
aspect-ratio: 16/9;
height: auto
}

.lp__instructors {
padding: 40px 24px
}

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

.lp__chart-section {
padding: 40px 24px
}

.lp__path-section {
padding: 40px 24px
}

.lp__divider-asym {
padding: 0 24px
}
}

@media (max-width: 480px) {
.lp__hero-h1 {
font-size: 28px
}

.lp__hero-sub {
font-size: 15px
}

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

.lp__chart-text h2 {
font-size: 28px
}

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

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

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

.lp__path-aside {
padding: 24px
}
}

.infg {
max-width: 1440px;
margin: 0 auto;
overflow: hidden
}

.infg .draw-border {
position: relative
}

.infg .draw-border::before,
.infg .draw-border::after {
content: "";
position: absolute;
border: 2px solid #058A3E;
border-radius: 14px;
inset: -6px;
opacity: 0;
animation: borderTrace .7s cubic-bezier(0.22, 1, 0.36, 1) .4s forwards
}

@keyframes borderTrace {
0% {
opacity: 0;
clip-path: inset(0 100% 100% 0)
}

100% {
opacity: 1;
clip-path: inset(0 0% 0% 0)
}
}

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

.infg .vis-anchor::after {
content: "";
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: radial-gradient(circle at 30% 50%, #058a3e14 0%, transparent 70%);
pointer-events: none
}

.infg .anchor-text {
padding: 80px 40px 80px 80px;
display: flex;
flex-direction: column;
justify-content: center;
position: relative;
z-index: 1
}

.infg .anchor-deco {
position: absolute;
top: 40px;
left: 24px;
width: 3px;
height: 120px;
background: linear-gradient(180deg, #058A3E 0%, #058a3e1a 100%);
border-radius: 8px
}

.infg .anchor-deco::after {
content: "";
position: absolute;
bottom: -8px;
left: -4px;
width: 11px;
height: 11px;
background: #FB864B;
border-radius: 48px
}

.infg .lbl-top {
font-size: 13px;
line-height: 1.4;
color: #058A3E;
font-weight: 600;
letter-spacing: .08em;
text-transform: uppercase;
margin-bottom: 16px
}

.infg .anchor-h1 {
font-size: 50px;
line-height: 1.15;
font-weight: 800;
color: #111;
margin-bottom: 24px
}

.infg .anchor-h1 span {
display: inline-block;
background: #058A3E;
color: #fff;
padding: 0 16px;
border-radius: 8px
}

.infg .anchor-sub {
font-size: 15px;
line-height: 1.65;
color: #444;
max-width: 420px;
margin-bottom: 40px
}

.infg .stat-row {
display: flex;
flex-direction: row;
gap: 40px
}

.infg .stat-item {
display: flex;
flex-direction: column;
gap: 8px
}

.infg .stat-num {
font-size: 38px;
line-height: 1.15;
font-weight: 800;
color: #058A3E
}

.infg .stat-lbl {
font-size: 13px;
line-height: 1.4;
color: #555
}

.infg .anchor-img {
position: relative;
overflow: hidden
}

.infg .anchor-img img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center top;
display: block;
transition: transform .6s cubic-bezier(0.22, 1, 0.36, 1)
}

.infg .anchor-img:hover img {
transform: scale(1.04)
}

.infg .img-vignette {
position: absolute;
inset: 0;
background: radial-gradient(circle at 50% 50%, transparent 40%, #0000008c 100%);
pointer-events: none
}

.infg .img-overlay {
position: absolute;
inset: 0;
background: #058a3ebf;
opacity: 0;
display: flex;
align-items: center;
justify-content: center;
transition: opacity .5s cubic-bezier(0.22, 1, 0.36, 1);
pointer-events: none
}

.infg .anchor-img:hover .img-overlay {
opacity: 1
}

.infg .overlay-text {
font-size: 21px;
line-height: 1.4;
color: #fff;
font-weight: 700;
text-align: center;
padding: 40px
}

.infg .metrics-band {
background: #E9E8E8;
padding: 8px 0;
overflow: hidden
}

.infg .metrics-strip {
display: flex;
flex-direction: row;
gap: 40px;
padding: 0 80px;
align-items: center;
justify-content: space-between;
flex-wrap: wrap
}

.infg .metric-pill {
display: flex;
flex-direction: row;
align-items: center;
gap: 8px;
padding: 8px 16px;
background: #fff;
border-radius: 48px;
box-shadow: -1px 2px 5px 0 #058a3e0f
}

.infg .metric-dot {
width: 8px;
height: 8px;
border-radius: 48px;
background: #058A3E;
flex-shrink: 0
}

.infg .metric-dot--orange {
background: #FB864B
}

.infg .metric-pill span {
font-size: 13px;
line-height: 1.4;
color: #222;
font-weight: 500
}

.infg .infographics-grid {
padding: 80px;
background: #fff;
position: relative
}

.infg .infographics-grid::before {
content: "";
position: absolute;
top: 0;
right: -40px;
width: 220px;
height: 220px;
border: 2px solid #058a3e1f;
border-radius: 48px;
transform: rotate(20deg);
pointer-events: none
}

.infg .grid-head {
text-align: center;
margin-bottom: 40px
}

.infg .grid-h2 {
font-size: 38px;
line-height: 1.15;
font-weight: 800;
color: #111;
display: inline-block;
background: #058A3E;
color: #fff;
padding: 0 24px;
border-radius: 8px;
margin-bottom: 16px
}

.infg .grid-sub {
font-size: 15px;
line-height: 1.65;
color: #444;
max-width: 560px;
margin: 0 auto;
text-align: left
}

.infg .three-col {
display: grid;
grid-template-columns: 1fr 1.5fr 2fr;
gap: 24px;
margin-bottom: 40px
}

.infg .info-card {
background: #fff;
border-radius: 14px;
padding: 24px;
box-shadow: -1px 6px 20px 0 #058a3e1a;
display: flex;
flex-direction: column;
gap: 16px;
position: relative;
transition: box-shadow .5s cubic-bezier(0.22, 1, 0.36, 1), transform .5s cubic-bezier(0.22, 1, 0.36, 1)
}

.infg .info-card:hover {
box-shadow: -1px 9px 52px 0 #058a3e1a;
transform: translateY(-4px)
}

.infg .info-card--wide {
background: linear-gradient(135deg, #058A3E 0%, #046b30 100%);
color: #fff
}

.infg .card-icon-wrap {
width: 44px;
height: 44px;
border-radius: 14px;
background: #058a3e1a;
display: flex;
align-items: center;
justify-content: center;
position: relative;
flex-shrink: 0
}

.infg .info-card--wide .card-icon-wrap {
background: #ffffff26
}

.infg .card-dot {
position: absolute;
top: -3px;
right: -3px;
width: 10px;
height: 10px;
background: #FB864B;
border-radius: 48px;
border: 2px solid #fff
}

.infg .card-h {
font-size: 15px;
line-height: 1.4;
font-weight: 700;
color: #111
}

.infg .info-card--wide .card-h {
color: #fff;
font-size: 21px
}

.infg .card-body {
font-size: 13px;
line-height: 1.65;
color: #555
}

.infg .info-card--wide .card-body {
color: #ffffffd9;
font-size: 15px
}

.infg .progress-block {
display: flex;
flex-direction: column;
gap: 16px
}

.infg .prog-item {
display: flex;
flex-direction: column;
gap: 8px
}

.infg .prog-label {
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: center
}

.infg .prog-name {
font-size: 13px;
line-height: 1.4;
color: #ffffffe6;
font-weight: 500
}

.infg .prog-pct {
font-size: 13px;
line-height: 1.4;
color: #FB864B;
font-weight: 700
}

.infg .prog-track {
height: 6px;
background: #fff3;
border-radius: 48px;
overflow: hidden
}

.infg .prog-fill {
height: 100%;
background: #FB864B;
border-radius: 48px;
animation: fillBar 1s cubic-bezier(0.22, 1, 0.36, 1) .6s both;
transform-origin: left
}

@keyframes fillBar {
from {
transform: scaleX(0)
}

to {
transform: scaleX(1)
}
}

.infg .prog-fill--a {
width: 78%
}

.infg .prog-fill--b {
width: 63%
}

.infg .prog-fill--c {
width: 89%
}

.infg .prog-fill--d {
width: 54%
}

.infg .bottom-row {
display: grid;
grid-template-columns: 1fr 1fr 1fr;
gap: 24px
}

.infg .step-card {
background: #E9E8E8;
border-radius: 14px;
padding: 24px;
display: flex;
flex-direction: column;
gap: 16px;
transition: background .5s ease-in-out
}

.infg .step-card:hover {
background: #fff;
box-shadow: -1px 6px 20px 0 #058a3e1a
}

.infg .step-num {
font-size: 38px;
line-height: 1.15;
font-weight: 800;
color: #058A3E;
opacity: .25
}

.infg .step-h {
font-size: 15px;
line-height: 1.4;
font-weight: 700;
color: #111
}

.infg .step-body {
font-size: 13px;
line-height: 1.65;
color: #555
}

.infg .aside-layout {
display: grid;
grid-template-columns: 160px 1fr;
gap: 24px;
align-items: start
}

.infg .aside-note {
font-size: 13px;
line-height: 1.65;
color: #888;
border-top: 2px solid #E9E8E8;
padding-top: 16px
}

.infg .aside-main {
font-size: 15px;
line-height: 1.65;
color: #444
}

.infg .aside-main strong {
color: #111
}

.infg .timeline-block {
margin-top: 40px;
padding: 40px;
background: #E9E8E8;
border-radius: 14px;
display: flex;
flex-direction: column;
gap: 24px
}

.infg .timeline-h {
font-size: 21px;
line-height: 1.4;
font-weight: 700;
color: #111;
display: inline-block;
background: #FB864B;
color: #fff;
padding: 0 16px;
border-radius: 8px
}

.infg .timeline-items {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 16px;
position: relative
}

.infg .timeline-items::before {
content: "";
position: absolute;
top: 20px;
left: 24px;
right: 24px;
height: 2px;
background: linear-gradient(90deg, #058A3E, #FB864B);
border-radius: 48px
}

.infg .t-item {
display: flex;
flex-direction: column;
gap: 8px;
padding-top: 40px;
position: relative
}

.infg .t-dot {
position: absolute;
top: 12px;
left: 0;
width: 16px;
height: 16px;
border-radius: 48px;
background: #058A3E;
border: 3px solid #E9E8E8;
box-shadow: -1px 2px 5px 0 #058a3e0f
}

.infg .t-dot--active {
background: #FB864B;
width: 20px;
height: 20px;
top: 10px
}

.infg .t-label {
font-size: 13px;
line-height: 1.4;
color: #058A3E;
font-weight: 600
}

.infg .t-text {
font-size: 13px;
line-height: 1.65;
color: #444
}

.infg .pill-link {
display: inline-block;
font-size: 13px;
line-height: 1.4;
color: #058A3E;
font-weight: 600;
text-decoration: none;
padding: 8px 16px;
border-radius: 48px;
background: #058a3e14;
position: relative;
overflow: hidden;
transition: color .4s ease-in-out
}

.infg .pill-link::before {
content: "";
position: absolute;
inset: 0;
background: #058A3E;
border-radius: 48px;
transform: translateX(-100%);
transition: transform .5s cubic-bezier(0.22, 1, 0.36, 1);
z-index: 0
}

.infg .pill-link:hover::before {
transform: translateX(0)
}

.infg .pill-link:hover {
color: #fff
}

.infg .pill-link span {
position: relative;
z-index: 1
}

@media (max-width: 1024px) {
.infg .anchor-text {
padding: 40px 24px 40px 40px
}

.infg .anchor-h1 {
font-size: 38px
}

.infg .three-col {
grid-template-columns: 1fr 1fr
}

.infg .three-col .info-card:last-child {
grid-column: 1 / -1
}

.infg .infographics-grid {
padding: 40px
}

.infg .timeline-items {
grid-template-columns: repeat(2, 1fr)
}

.infg .timeline-items::before {
display: none
}

.infg .t-item {
padding-top: 8px
}

.infg .t-dot {
display: none
}
}

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

.infg .anchor-img {
height: 280px
}

.infg .anchor-text {
padding: 40px 24px
}

.infg .anchor-h1 {
font-size: 28px
}

.infg .stat-row {
gap: 24px
}

.infg .stat-num {
font-size: 28px
}

.infg .three-col {
grid-template-columns: 1fr
}

.infg .bottom-row {
grid-template-columns: 1fr
}

.infg .infographics-grid {
padding: 24px
}

.infg .metrics-strip {
padding: 0 24px;
gap: 8px
}

.infg .aside-layout {
grid-template-columns: 1fr
}

.infg .timeline-items {
grid-template-columns: 1fr
}
}

@media (max-width: 480px) {
.infg .anchor-h1 {
font-size: 21px
}

.infg .grid-h2 {
font-size: 21px
}

.infg .stat-row {
flex-direction: column;
gap: 16px
}

.infg .timeline-block {
padding: 24px
}
}

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

.ptl * {
box-sizing: border-box
}

@keyframes gradShift {
0% {
background-position: 0 50%
}

50% {
background-position: 100% 50%
}

100% {
background-position: 0 50%
}
}

@keyframes scaleIn {
0% {
transform: scale(0.8);
opacity: 0
}

70% {
transform: scale(1.03);
opacity: 1
}

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

.ptl__hero {
background: linear-gradient(135deg, #058A3E, #046e32, #FB864B, #e06b30, #058A3E);
background-size: 300% 300%;
animation: gradShift 12s ease-in-out infinite;
padding: 80px 40px;
position: relative;
border-bottom: 3px solid #FB864B;
overflow: hidden
}

.ptl__hero::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: radial-gradient(circle at 50% 50%, #058a3e59 0%, transparent 70%);
pointer-events: none
}

.ptl__hero-inner {
display: flex;
flex-direction: row;
align-items: center;
gap: 80px;
max-width: 1440px;
margin: 0 auto
}

.ptl__hero-text {
flex: 1;
min-width: 0
}

.ptl__hero-tag {
display: inline-block;
background: #ffffff2e;
color: #fff;
font-size: 13px;
line-height: 1.4;
padding: 8px 16px;
border-radius: 48px;
margin-bottom: 24px;
border: 1px solid #ffffff4d
}

.ptl__hero-h1 {
font-size: 50px;
line-height: 1.15;
color: #fff;
margin: 0 0 24px;
font-weight: 800
}

.ptl__hero-desc {
font-size: 21px;
line-height: 1.65;
color: #ffffffe6;
margin: 0;
max-width: 540px
}

.ptl__hero-img {
flex: 0 0 420px;
position: relative
}

.ptl__hero-img img {
width: 420px;
height: 320px;
object-fit: cover;
object-position: center;
border-radius: 14px;
display: block;
filter: saturate(1.2) contrast(1.05)
}

.ptl__hero-img::after {
content: '';
position: absolute;
inset: 0;
border-radius: 14px;
background: linear-gradient(135deg, #058a3e40 0%, #fb864b26 100%);
pointer-events: none
}

.ptl__hero-line {
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 4px;
background: linear-gradient(90deg, #FB864B, #058A3E, #FB864B);
background-size: 200% 100%;
animation: gradShift 6s ease-in-out infinite
}

.ptl__wave1 {
line-height: 0;
background: #fff
}

.ptl__wave1 svg {
display: block;
width: 100%
}

.ptl__invest {
background: #fff;
padding: 80px 40px
}

.ptl__invest-inner {
max-width: 1440px;
margin: 0 auto;
display: flex;
flex-direction: row;
gap: 80px;
align-items: flex-start
}

.ptl__invest-aside {
flex: 0 0 220px;
padding-top: 8px
}

.ptl__invest-note {
font-size: 13px;
line-height: 1.65;
color: #555;
border-top: 2px solid #FB864B;
padding-top: 16px
}

.ptl__invest-body {
flex: 1;
min-width: 0
}

.ptl__strip-h2 {
display: inline-block;
background: #058A3E;
color: #fff;
font-size: 38px;
line-height: 1.15;
padding: 8px 16px;
border-radius: 8px;
margin: 0 0 24px;
text-align: center
}

.ptl__invest-sub {
font-size: 15px;
line-height: 1.65;
color: #333;
margin: 0 0 40px
}

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

.ptl__inv-card {
border: 2px dashed #058A3E;
border-radius: 14px;
padding: 24px;
background: #fff;
box-shadow: -1px 2px 5px 0 #058a3e0f;
transition: box-shadow .5s cubic-bezier(0.22, 1, 0.36, 1), transform .5s cubic-bezier(0.22, 1, 0.36, 1);
animation: scaleIn .6s cubic-bezier(0.22, 1, 0.36, 1) both
}

.ptl__inv-card:hover {
box-shadow: -1px 6px 20px 0 #058a3e1a;
transform: translateY(-2px)
}

.ptl__inv-icon {
width: 40px;
height: 40px;
margin-bottom: 16px;
display: flex;
align-items: center;
justify-content: center
}

.ptl__inv-label {
font-size: 13px;
line-height: 1.4;
color: #058A3E;
font-weight: 700;
text-transform: uppercase;
letter-spacing: .04em;
margin: 0 0 8px
}

.ptl__inv-val {
font-size: 28px;
line-height: 1.15;
font-weight: 800;
color: #1a3a2a;
margin: 0 0 8px
}

.ptl__inv-desc {
font-size: 13px;
line-height: 1.65;
color: #555;
margin: 0
}

.ptl__wave2 {
line-height: 0;
background: #E9E8E8
}

.ptl__wave2 svg {
display: block;
width: 100%
}

.ptl__longterm {
background: #E9E8E8;
padding: 80px 40px;
position: relative;
overflow: hidden
}

.ptl__longterm::before {
content: '';
position: absolute;
top: -80px;
right: -80px;
width: 400px;
height: 400px;
border-radius: 48px;
background: radial-gradient(circle at 50% 50%, #058a3e12 0%, transparent 70%);
pointer-events: none
}

.ptl__longterm-inner {
max-width: 1440px;
margin: 0 auto
}

.ptl__longterm-top {
text-align: center;
margin-bottom: 40px
}

.ptl__strip-h2--center {
display: inline-block;
background: #FB864B;
color: #fff;
font-size: 38px;
line-height: 1.15;
padding: 8px 16px;
border-radius: 8px;
margin: 0 0 16px
}

.ptl__longterm-sub {
font-size: 15px;
line-height: 1.65;
color: #333;
max-width: 600px;
margin: 0 auto;
text-align: left
}

.ptl__longterm-cols {
display: flex;
flex-direction: row;
gap: 40px;
align-items: stretch
}

.ptl__lt-img {
flex: 0 0 380px
}

.ptl__lt-img img {
width: 380px;
height: 100%;
min-height: 280px;
object-fit: cover;
object-position: center top;
border-radius: 14px;
display: block;
box-shadow: -1px 6px 20px 0 #058a3e1a
}

.ptl__lt-list {
flex: 1;
display: flex;
flex-direction: column;
gap: 16px;
min-width: 0
}

.ptl__lt-item {
background: #fff;
border-radius: 14px;
padding: 24px;
display: flex;
flex-direction: row;
gap: 16px;
align-items: flex-start;
box-shadow: -1px 2px 5px 0 #058a3e0f;
transition: box-shadow .45s cubic-bezier(0.22, 1, 0.36, 1)
}

.ptl__lt-item:hover {
box-shadow: -1px 6px 20px 0 #058a3e1a
}

.ptl__lt-num {
flex: 0 0 40px;
height: 40px;
border-radius: 8px;
background: #058A3E;
color: #fff;
font-size: 21px;
font-weight: 800;
display: flex;
align-items: center;
justify-content: center;
line-height: 1.15
}

.ptl__lt-text {
flex: 1;
min-width: 0
}

.ptl__lt-h4 {
font-size: 15px;
line-height: 1.4;
font-weight: 700;
color: #1a3a2a;
margin: 0 0 8px
}

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

.ptl__wave3 {
line-height: 0;
background: #fff
}

.ptl__wave3 svg {
display: block;
width: 100%
}

.ptl__fit {
background: #fff;
padding: 80px 40px
}

.ptl__fit-inner {
max-width: 1440px;
margin: 0 auto;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 40px;
align-items: start
}

.ptl__fit-left {
min-width: 0
}

.ptl__strip-h2--dark {
display: inline-block;
background: #1a3a2a;
color: #fff;
font-size: 38px;
line-height: 1.15;
padding: 8px 16px;
border-radius: 8px;
margin: 0 0 24px
}

.ptl__fit-desc {
font-size: 15px;
line-height: 1.65;
color: #333;
margin: 0 0 40px
}

.ptl__fit-yes {
margin-bottom: 24px
}

.ptl__fit-yes-h5 {
font-size: 15px;
line-height: 1.4;
font-weight: 700;
color: #058A3E;
margin: 0 0 16px
}

.ptl__fit-item {
display: flex;
flex-direction: row;
gap: 16px;
align-items: flex-start;
margin-bottom: 16px
}

.ptl__fit-dot {
flex: 0 0 20px;
height: 20px;
border-radius: 48px;
margin-top: 2px
}

.ptl__fit-dot--yes {
background: #058A3E
}

.ptl__fit-dot--no {
background: #FB864B
}

.ptl__fit-item-p {
font-size: 15px;
line-height: 1.65;
color: #333;
margin: 0;
flex: 1
}

.ptl__fit-no-h5 {
font-size: 15px;
line-height: 1.4;
font-weight: 700;
color: #FB864B;
margin: 0 0 16px
}

.ptl__fit-right {
min-width: 0
}

.ptl__fit-img img {
width: 100%;
height: 480px;
object-fit: cover;
object-position: center;
border-radius: 14px;
display: block;
box-shadow: -1px 9px 52px 0 #058a3e1a
}

.ptl__wave4 {
line-height: 0;
background: #1a3a2a
}

.ptl__wave4 svg {
display: block;
width: 100%
}

.ptl__exp {
background: #1a3a2a;
padding: 80px 40px;
position: relative;
overflow: hidden
}

.ptl__exp::before {
content: '';
position: absolute;
bottom: -120px;
left: -120px;
width: 500px;
height: 500px;
border-radius: 48px;
background: radial-gradient(circle at 50% 50%, #fb864b14 0%, transparent 70%);
pointer-events: none
}

.ptl__exp-inner {
max-width: 1440px;
margin: 0 auto
}

.ptl__exp-top {
text-align: center;
margin-bottom: 40px
}

.ptl__strip-h2--light {
display: inline-block;
background: #FB864B;
color: #fff;
font-size: 38px;
line-height: 1.15;
padding: 8px 16px;
border-radius: 8px;
margin: 0 0 16px
}

.ptl__exp-intro {
font-size: 15px;
line-height: 1.65;
color: #ffffffbf;
max-width: 560px;
margin: 0 auto;
text-align: left
}

.ptl__exp-card {
background: #ffffff0f;
border: 1px solid #ffffff1f;
border-radius: 14px;
padding: 40px;
display: flex;
flex-direction: row;
gap: 40px;
align-items: flex-start;
max-width: 860px;
margin: 0 auto;
box-shadow: -1px 6px 20px 0 #058a3e1a
}

.ptl__exp-portrait {
flex: 0 0 120px
}

.ptl__exp-portrait img {
width: 120px;
height: 150px;
object-fit: cover;
object-position: center;
border-radius: 14px;
display: block;
box-shadow: -1px 6px 20px 0 #058a3e1a
}

.ptl__exp-quote {
flex: 1;
min-width: 0
}

.ptl__exp-q {
font-size: 21px;
line-height: 1.65;
color: #fff;
margin: 0 0 16px;
font-style: italic
}

.ptl__exp-name {
font-size: 15px;
line-height: 1.4;
font-weight: 700;
color: #FB864B;
margin: 0 0 8px
}

.ptl__exp-role {
font-size: 13px;
line-height: 1.65;
color: #fff9;
margin: 0
}

.ptl__wave5 {
line-height: 0;
background: #fff
}

.ptl__wave5 svg {
display: block;
width: 100%
}

.ptl__team {
background: #fff;
padding: 80px 40px
}

.ptl__team-inner {
max-width: 1440px;
margin: 0 auto
}

.ptl__team-top {
display: flex;
flex-direction: row;
gap: 40px;
align-items: flex-start;
margin-bottom: 40px
}

.ptl__team-heading {
flex: 0 0 auto
}

.ptl__strip-h2--accent {
display: inline-block;
background: #058A3E;
color: #fff;
font-size: 38px;
line-height: 1.15;
padding: 8px 16px;
border-radius: 8px;
margin: 0
}

.ptl__team-intro {
flex: 1;
min-width: 0;
padding-top: 8px
}

.ptl__team-intro-p {
font-size: 15px;
line-height: 1.65;
color: #333;
margin: 0
}

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

.ptl__tm-card {
border-radius: 14px;
padding: 24px;
background: #fff;
box-shadow: -1px 2px 5px 0 #058a3e0f;
border: 1px solid #E9E8E8;
transition: box-shadow .55s cubic-bezier(0.22, 1, 0.36, 1), transform .55s cubic-bezier(0.22, 1, 0.36, 1)
}

.ptl__tm-card:hover {
box-shadow: -1px 9px 52px 0 #058a3e1a;
transform: translateY(-3px)
}

.ptl__tm-name {
font-size: 21px;
line-height: 1.4;
font-weight: 800;
color: #1a3a2a;
margin: 0 0 8px
}

.ptl__tm-role {
font-size: 13px;
line-height: 1.4;
color: #058A3E;
font-weight: 700;
text-transform: uppercase;
margin: 0 0 16px
}

.ptl__tm-bio {
font-size: 13px;
line-height: 1.65;
color: #555;
margin: 0 0 16px
}

.ptl__tm-stat {
display: flex;
flex-direction: row;
gap: 16px;
align-items: baseline
}

.ptl__tm-num {
font-size: 28px;
line-height: 1.15;
font-weight: 800;
color: #FB864B
}

.ptl__tm-numlabel {
font-size: 13px;
line-height: 1.4;
color: #555
}

@media (max-width: 1024px) {
.ptl__hero-inner {
gap: 40px
}

.ptl__hero-img {
flex: 0 0 320px
}

.ptl__hero-img img {
width: 320px;
height: 240px
}

.ptl__hero-h1 {
font-size: 38px
}

.ptl__invest-inner {
gap: 40px
}

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

.ptl__longterm-cols {
flex-direction: column
}

.ptl__lt-img {
flex: 0 0 auto
}

.ptl__lt-img img {
width: 100%;
height: 240px;
min-height: unset
}

.ptl__fit-inner {
grid-template-columns: 1fr
}

.ptl__fit-img img {
height: 300px
}

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

@media (max-width: 768px) {
.ptl__hero-inner {
flex-direction: column;
gap: 24px
}

.ptl__hero-img {
flex: 0 0 auto;
width: 100%
}

.ptl__hero-img img {
width: 100%;
height: 220px
}

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

.ptl__hero-desc {
font-size: 15px
}

.ptl__invest-inner {
flex-direction: column;
gap: 24px
}

.ptl__invest-aside {
flex: 0 0 auto
}

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

.ptl__strip-h2,
.ptl__strip-h2--center,
.ptl__strip-h2--dark,
.ptl__strip-h2--light,
.ptl__strip-h2--accent {
font-size: 28px
}

.ptl__exp-card {
flex-direction: column;
gap: 24px;
padding: 24px
}

.ptl__team-top {
flex-direction: column;
gap: 16px
}

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

@media (max-width: 480px) {

.ptl__hero,
.ptl__invest,
.ptl__longterm,
.ptl__fit,
.ptl__exp,
.ptl__team {
padding: 40px 16px
}

.ptl__hero-h1 {
font-size: 21px
}

.ptl__exp-q {
font-size: 15px
}
}

.cu {
max-width: 1440px;
margin: 0 auto;
overflow-x: clip;
position: relative
}

.cu .pg-strip {
height: 4px;
background: linear-gradient(90deg, #058A3E 0%, #FB864B 100%);
width: 100%
}

.cu .reach {
display: grid;
grid-template-columns: 1fr 1fr;
min-height: 560px;
position: relative
}

.cu .reach__img-side {
position: relative;
overflow: hidden;
border-radius: 0 0 14px 0
}

.cu .reach__img-side img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center top;
display: block
}

.cu .reach__img-side::after {
content: '';
position: absolute;
inset: 0;
background: linear-gradient(170deg, transparent 40%, #058a3eb8 100%);
pointer-events: none
}

.cu .reach__text-side {
padding: 80px 40px 80px 56px;
display: flex;
flex-direction: column;
justify-content: center;
background: #fff;
position: relative
}

.cu .reach__text-side::before {
content: '';
position: absolute;
left: 0;
top: 40px;
bottom: 40px;
width: 3px;
background: linear-gradient(180deg, #058A3E 0%, #FB864B 100%);
border-radius: 8px
}

.cu .reach__label {
font-size: 13px;
line-height: 1.4;
color: #058A3E;
letter-spacing: .08em;
text-transform: uppercase;
margin-bottom: 16px
}

.cu .reach__heading {
font-size: 50px;
line-height: 1.15;
color: #111;
margin: 0 0 24px;
font-weight: 800
}

.cu .reach__heading span {
display: inline-block;
background: #058A3E;
color: #fff;
padding: 0 12px;
border-radius: 8px;
line-height: 1.2
}

.cu .reach__sub {
font-size: 15px;
line-height: 1.65;
color: #333;
margin: 0 0 40px;
max-width: 380px
}

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

.cu .reach__contact-item {
display: flex;
align-items: center;
gap: 16px
}

.cu .reach__contact-icon {
width: 40px;
height: 40px;
border-radius: 8px;
background: #E9E8E8;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
transition: background .5s cubic-bezier(0.22, 1, 0.36, 1)
}

.cu .reach__contact-item:hover .reach__contact-icon {
background: #058A3E
}

.cu .reach__contact-icon svg {
width: 18px;
height: 18px;
fill: none;
stroke: #058A3E;
stroke-width: 2;
stroke-linecap: round;
stroke-linejoin: round;
transition: stroke .5s cubic-bezier(0.22, 1, 0.36, 1)
}

.cu .reach__contact-item:hover .reach__contact-icon svg {
stroke: #fff
}

.cu .reach__contact-text {
font-size: 15px;
line-height: 1.4;
color: #222
}

.cu .reach__contact-text a {
color: #222;
text-decoration: none;
position: relative;
transition: color .45s ease-in-out
}

.cu .reach__contact-text a:hover {
color: #058A3E
}

.cu .reach__deco {
position: absolute;
bottom: -30px;
right: -30px;
width: 160px;
height: 160px;
pointer-events: none;
opacity: .07;
z-index: 0
}

.cu .reach__deco circle {
fill: none;
stroke: #058A3E;
stroke-width: 1.5
}

.cu .form-belt {
background: #E9E8E8;
position: relative;
padding: 80px 40px;
clip-path: polygon(0 0, 100% 0, 100% calc(100% - 40px), 0 100%);
padding-bottom: 120px
}

.cu .form-belt__inner {
max-width: 860px;
margin: 0 auto
}

.cu .form-belt__top {
display: grid;
grid-template-columns: 1fr 2fr;
gap: 40px;
margin-bottom: 40px;
align-items: start
}

.cu .form-belt__aside {
padding-top: 8px
}

.cu .form-belt__aside-label {
font-size: 13px;
color: #058A3E;
text-transform: uppercase;
letter-spacing: .07em;
margin-bottom: 8px
}

.cu .form-belt__aside-heading {
font-size: 28px;
line-height: 1.15;
color: #111;
margin: 0 0 16px;
font-weight: 700
}

.cu .form-belt__aside-note {
font-size: 13px;
line-height: 1.65;
color: #555
}

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

.cu .form-belt__row {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 16px
}

.cu .form-belt__field {
display: flex;
flex-direction: column;
gap: 8px
}

.cu .form-belt__field--full {
grid-column: 1 / -1
}

.cu .form-belt__label {
font-size: 13px;
line-height: 1.4;
color: #333;
font-weight: 600
}

.cu .form-belt__input {
border: 1.5px solid #ccc;
border-radius: 8px;
padding: 12px 16px;
font-size: 15px;
line-height: 1.4;
color: #111;
background: #fff;
outline: none;
transition: border-color .45s ease-in-out, box-shadow .45s ease-in-out;
width: 100%;
box-sizing: border-box;
appearance: none;
-webkit-appearance: none
}

.cu .form-belt__input::placeholder {
color: #aaa
}

.cu .form-belt__input:focus {
border-color: #058A3E;
box-shadow: -1px 2px 5px 0 #058a3e0f -1px 6px 20px 0 #058a3e1a
}

.cu .form-belt__select {
border: 1.5px solid #ccc !important;
border-radius: 8px;
padding: 12px 16px;
font-size: 15px;
line-height: 1.4;
color: #111;
background: #fff;
outline: none;
transition: border-color .45s ease-in-out;
width: 100%;
box-sizing: border-box;
appearance: none;
-webkit-appearance: none;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23058A3E' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
background-repeat: no-repeat;
background-position: right 14px center;
padding-right: 40px;
cursor: pointer
}

.cu .form-belt__select:focus {
border-color: #058A3E
}

.cu .form-belt__slots {
display: flex;
flex-direction: column;
gap: 8px
}

.cu .form-belt__slots-label {
font-size: 13px;
font-weight: 600;
color: #333
}

.cu .form-belt__slot-grid {
display: flex;
flex-wrap: wrap;
gap: 8px
}

.cu .form-belt__slot-opt {
position: relative
}

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

.cu .form-belt__slot-opt label {
display: inline-block;
padding: 8px 16px;
border-radius: 48px;
border: 1.5px solid #ccc;
font-size: 13px;
line-height: 1.4;
color: #444;
background: #fff;
cursor: pointer;
transition: background .5s cubic-bezier(0.22, 1, 0.36, 1), border-color .5s cubic-bezier(0.22, 1, 0.36, 1), color .5s cubic-bezier(0.22, 1, 0.36, 1);
user-select: none
}

.cu .form-belt__slot-opt input[type="radio"]:checked+label {
background: #058A3E;
border-color: #058A3E;
color: #fff;
box-shadow: inset 0 2px 6px #058a3e2e
}

.cu .form-belt__slot-opt label:hover {
border-color: #058A3E;
color: #058A3E
}

.cu .form-belt__privacy {
display: flex;
align-items: flex-start;
gap: 12px;
margin-top: 8px
}

.cu .form-belt__privacy input[type="checkbox"] {
margin-top: 2px;
width: 18px;
height: 18px;
accent-color: #058A3E;
cursor: pointer;
flex-shrink: 0
}

.cu .form-belt__privacy-text {
font-size: 13px;
line-height: 1.65;
color: #555
}

.cu .form-belt__privacy-text a {
color: #058A3E;
text-decoration: underline;
text-underline-offset: 3px;
transition: color .45s ease-in-out
}

.cu .form-belt__privacy-text a:hover {
color: #FB864B
}

.cu .form-belt__submit {
align-self: flex-start;
background: #058A3E;
color: #fff;
border: 2px solid #058A3E;
border-radius: 14px;
padding: 14px 40px;
font-size: 15px;
line-height: 1.4;
font-weight: 700;
cursor: pointer;
position: relative;
transition: background .5s cubic-bezier(0.22, 1, 0.36, 1), outline-offset .45s ease-in-out;
outline: 2px solid transparent;
outline-offset: 0
}

.cu .form-belt__submit:hover {
background: #046e31;
outline: 2px solid #058A3E;
outline-offset: 4px
}

.cu .form-belt__submit:active {
box-shadow: inset 0 2px 8px #058a3e38
}

.cu .form-belt__submit:focus-visible {
outline: 3px solid #FB864B;
outline-offset: 4px
}

.cu .info-split {
display: grid;
grid-template-columns: 5fr 4fr;
gap: 0;
margin-top: -40px;
position: relative;
z-index: 1
}

.cu .info-split__left {
padding: 80px 40px;
background: #fff;
position: relative;
display: flex;
flex-direction: column;
gap: 24px
}

.cu .info-split__right {
position: relative;
overflow: hidden
}

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

.cu .info-split__right::before {
content: '';
position: absolute;
inset: 0;
background: linear-gradient(120deg, #058a3e8c 0%, transparent 70%);
z-index: 1;
pointer-events: none
}

.cu .info-split__tag {
display: inline-block;
background: #E9E8E8;
color: #058A3E;
font-size: 13px;
font-weight: 700;
border-radius: 8px;
padding: 4px 12px;
text-transform: uppercase;
letter-spacing: .07em;
align-self: flex-start
}

.cu .info-split__heading {
font-size: 38px;
line-height: 1.15;
color: #111;
margin: 0;
font-weight: 800
}

.cu .info-split__heading mark {
background: #FB864B;
color: #fff;
border-radius: 8px;
padding: 0 8px
}

.cu .info-split__body {
display: grid;
grid-template-columns: 140px 1fr;
gap: 16px 24px;
align-items: start
}

.cu .info-split__aside-note {
font-size: 13px;
line-height: 1.65;
color: #888;
text-align: right;
padding-top: 4px
}

.cu .info-split__para {
font-size: 15px;
line-height: 1.65;
color: #333;
margin: 0
}

.cu .info-split__stat-row {
display: flex;
flex-direction: row;
gap: 40px;
margin-top: 8px
}

.cu .info-split__stat {
display: flex;
flex-direction: column;
gap: 4px
}

.cu .info-split__stat-num {
font-size: 38px;
line-height: 1.15;
font-weight: 800;
color: #058A3E
}

.cu .info-split__stat-label {
font-size: 13px;
line-height: 1.4;
color: #666
}

.cu .info-split__deco {
position: absolute;
top: 24px;
right: 24px;
width: 120px;
height: 120px;
opacity: .08;
pointer-events: none
}

.cu .info-split__deco circle {
fill: none;
stroke: #058A3E;
stroke-width: 1.5
}

@keyframes cu-fadein {
from {
opacity: 0;
transform: translateY(18px)
}

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

.cu .reach__label {
animation: cu-fadein .55s cubic-bezier(0.22, 1, 0.36, 1) .08s both
}

.cu .reach__heading {
animation: cu-fadein .6s cubic-bezier(0.22, 1, 0.36, 1) .18s both
}

.cu .reach__sub {
animation: cu-fadein .65s cubic-bezier(0.22, 1, 0.36, 1) .28s both
}

.cu .reach__contacts {
animation: cu-fadein .7s cubic-bezier(0.22, 1, 0.36, 1) .4s both
}

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

.cu .reach__img-side {
height: 320px;
border-radius: 0
}

.cu .reach__text-side {
padding: 40px 24px 40px 40px
}

.cu .reach__heading {
font-size: 38px
}

.cu .info-split {
grid-template-columns: 1fr
}

.cu .info-split__right {
height: 280px
}

.cu .form-belt__top {
grid-template-columns: 1fr
}

.cu .form-belt__row {
grid-template-columns: 1fr
}
}

@media (max-width: 768px) {
.cu .reach__heading {
font-size: 28px
}

.cu .reach__text-side {
padding: 40px 16px 40px 24px
}

.cu .form-belt {
padding: 40px 16px 80px
}

.cu .info-split__left {
padding: 40px 16px
}

.cu .info-split__body {
grid-template-columns: 1fr
}

.cu .info-split__aside-note {
text-align: left
}

.cu .info-split__stat-row {
gap: 24px
}

.cu .info-split__heading {
font-size: 28px
}
}

@media (max-width: 480px) {
.cu .reach__heading {
font-size: 21px
}

.cu .form-belt__submit {
width: 100%;
text-align: center
}

.cu .info-split__stat-row {
flex-direction: column;
gap: 16px
}
}

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

.abt .reveal-item {
opacity: 0;
transform: translateY(24px);
animation: revealUp .6s cubic-bezier(0.22, 1, 0.36, 1) forwards
}

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

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

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

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

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

.abt .reveal-item:nth-child(6) {
animation-delay: .55s
}

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

.abt ::selection {
background: #FB864B;
color: #fff
}

.abt-intro {
display: grid;
grid-template-columns: 1fr 1.6fr;
min-height: 520px;
padding: 80px;
gap: 80px;
align-items: center;
background: #fff;
position: relative
}

.abt-intro__img-col {
position: relative;
display: flex;
flex-direction: column;
align-items: flex-start
}

.abt-intro__shape {
position: absolute;
top: -24px;
left: -24px;
width: 80px;
height: 80px;
border-radius: 48px;
background: #058A3E;
opacity: .1;
pointer-events: none;
z-index: 0
}

.abt-intro__shape--sm {
top: auto;
bottom: -16px;
left: 40px;
width: 40px;
height: 40px;
background: #FB864B;
opacity: .18;
border-radius: 48px
}

.abt-intro__img {
width: 100%;
height: 420px;
object-fit: cover;
object-position: center top;
display: block;
border-radius: 14px;
box-shadow: -1px 9px 52px 0 #058a3e1a;
position: relative;
z-index: 1;
filter: contrast(1.04) saturate(1.06)
}

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

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

.abt-intro__dot {
width: 10px;
height: 10px;
border-radius: 48px;
background: #058A3E;
flex-shrink: 0
}

.abt-intro__label-text {
font-size: 13px;
line-height: 1.4;
color: #058A3E;
letter-spacing: .04em;
text-transform: uppercase
}

.abt-intro__h1 {
font-size: 50px;
line-height: 1.15;
color: #111;
margin: 0;
font-weight: 800
}

.abt-intro__h1 span {
display: inline;
background: #058A3E;
color: #fff;
padding: 0 8px;
border-radius: 8px
}

.abt-intro__desc {
font-size: 21px;
line-height: 1.65;
color: #333;
margin: 0;
max-width: 520px
}

.abt-intro__stat-row {
display: flex;
flex-direction: row;
gap: 40px;
margin-top: 8px
}

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

.abt-intro__stat-num {
font-size: 38px;
line-height: 1.15;
color: #058A3E;
font-weight: 800
}

.abt-intro__stat-label {
font-size: 13px;
line-height: 1.4;
color: #555
}

@media (max-width: 1024px) {
.abt-intro {
grid-template-columns: 1fr 1fr;
padding: 40px;
gap: 40px
}

.abt-intro__h1 {
font-size: 38px
}
}

@media (max-width: 768px) {
.abt-intro {
grid-template-columns: 1fr;
padding: 40px 24px;
gap: 24px
}

.abt-intro__img {
height: 280px
}

.abt-intro__h1 {
font-size: 28px
}

.abt-intro__desc {
font-size: 15px
}
}

@media (max-width: 480px) {
.abt-intro {
padding: 24px 16px
}

.abt-intro__stat-row {
gap: 24px;
flex-wrap: wrap
}

.abt-intro__stat-num {
font-size: 28px
}
}

.abt-team {
background: #f4f9f6;
padding: 80px;
position: relative;
overflow: hidden
}

.abt-team__bg-pattern {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 700px;
height: 700px;
pointer-events: none;
opacity: .035;
z-index: 0
}

.abt-team__inner {
position: relative;
z-index: 1;
max-width: 1200px;
margin: 0 auto
}

.abt-team__heading-wrap {
text-align: center;
margin-bottom: 40px
}

.abt-team__h2 {
font-size: 38px;
line-height: 1.15;
color: #111;
margin: 0 0 8px;
display: inline-block
}

.abt-team__h2-bg {
background: #FB864B;
color: #fff;
padding: 0 16px;
border-radius: 8px
}

.abt-team__sub {
font-size: 15px;
line-height: 1.65;
color: #444;
text-align: left;
max-width: 560px;
margin: 16px 0 0
}

.abt-team__grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 40px;
align-items: start
}

.abt-team__person {
display: flex;
flex-direction: row;
gap: 24px;
background: #fff;
border-radius: 14px;
padding: 24px;
box-shadow: -1px 6px 20px 0 #058a3e1a;
transition: box-shadow .5s cubic-bezier(0.22, 1, 0.36, 1)
}

.abt-team__person:hover {
box-shadow: -1px 9px 52px 0 #058a3e1a
}

.abt-team__portrait {
width: 112px;
height: 144px;
object-fit: cover;
object-position: center;
flex-shrink: 0;
display: block
}

.abt-team__person-info {
display: flex;
flex-direction: column;
gap: 8px
}

.abt-team__person-name {
font-size: 21px;
line-height: 1.15;
color: #111;
font-weight: 700;
margin: 0
}

.abt-team__person-role {
font-size: 13px;
line-height: 1.4;
color: #058A3E;
font-weight: 600
}

.abt-team__person-bio {
font-size: 15px;
line-height: 1.65;
color: #444;
margin: 0
}

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

.abt-team__fact {
background: #fff;
border-radius: 14px;
padding: 24px;
box-shadow: -1px 2px 5px 0 #058a3e0f;
display: flex;
flex-direction: row;
gap: 16px;
align-items: flex-start
}

.abt-team__fact-icon {
width: 40px;
height: 40px;
background: #058A3E;
border-radius: 8px;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0
}

.abt-team__fact-body {
display: flex;
flex-direction: column;
gap: 8px
}

.abt-team__fact-num {
font-size: 28px;
line-height: 1.15;
color: #058A3E;
font-weight: 800
}

.abt-team__fact-label {
font-size: 13px;
line-height: 1.4;
color: #555
}

.abt-team__fact-desc {
font-size: 15px;
line-height: 1.65;
color: #333;
margin: 0
}

.abt-team__quote-wrap {
grid-column: 1 / -1;
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 16px;
background: #058A3E;
border-radius: 14px;
padding: 40px
}

.abt-team__quote-mark {
font-size: 80px;
line-height: .8;
color: #ffffff40;
font-weight: 900;
flex-shrink: 0;
margin-top: 8px;
user-select: none
}

.abt-team__quote-text {
font-size: 21px;
line-height: 1.65;
color: #fff;
margin: 0;
font-style: italic
}

@media (max-width: 1024px) {
.abt-team {
padding: 40px
}

.abt-team__grid {
gap: 24px
}
}

@media (max-width: 768px) {
.abt-team {
padding: 40px 24px
}

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

.abt-team__quote-wrap {
grid-column: 1;
padding: 24px
}

.abt-team__quote-text {
font-size: 15px
}

.abt-team__quote-mark {
font-size: 50px
}
}

@media (max-width: 480px) {
.abt-team {
padding: 24px 16px
}

.abt-team__person {
flex-direction: column
}

.abt-team__portrait {
width: 100%;
height: 200px
}
}

.abt-contact {
padding: 80px;
background: #fff;
display: grid;
grid-template-columns: 1.1fr 1fr;
gap: 80px;
align-items: start
}

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

.abt-contact__h2 {
font-size: 38px;
line-height: 1.15;
color: #111;
margin: 0
}

.abt-contact__h2-bg {
background: #E9E8E8;
padding: 0 8px;
border-radius: 8px
}

.abt-contact__body {
font-size: 15px;
line-height: 1.65;
color: #444;
margin: 0
}

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

.abt-contact__aside-note {
display: flex;
flex-direction: row;
gap: 16px;
align-items: flex-start
}

.abt-contact__aside-dot {
width: 8px;
height: 8px;
border-radius: 48px;
background: #FB864B;
flex-shrink: 0;
margin-top: 6px
}

.abt-contact__aside-text {
font-size: 13px;
line-height: 1.65;
color: #555;
margin: 0
}

.abt-contact__img {
width: 100%;
height: 280px;
object-fit: cover;
object-position: center;
border-radius: 14px;
box-shadow: -1px 6px 20px 0 #058a3e1a;
display: block
}

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

.abt-form {
background: #f4f9f6;
border-radius: 14px;
padding: 40px;
box-shadow: -1px 6px 20px 0 #058a3e1a;
display: flex;
flex-direction: column;
gap: 16px
}

.abt-form__h3 {
font-size: 21px;
line-height: 1.15;
color: #111;
margin: 0;
font-weight: 700
}

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

.abt-form__label {
font-size: 13px;
line-height: 1.4;
color: #333;
font-weight: 600
}

.abt-form__input {
border: 2px solid #E9E8E8;
border-radius: 8px;
padding: 16px;
font-size: 15px;
line-height: 1.4;
color: #111;
background: #fff;
outline: none;
transition: border-color .45s cubic-bezier(0.22, 1, 0.36, 1), box-shadow .45s cubic-bezier(0.22, 1, 0.36, 1)
}

.abt-form__input::placeholder {
color: #aaa
}

.abt-form__input:focus {
border-color: #058A3E;
box-shadow: -1px 2px 5px 0 #058a3e0f
}

.abt-form__select {
border: 2px solid #E9E8E8;
border-radius: 8px;
padding: 16px;
font-size: 15px;
line-height: 1.4;
color: #111;
background: #fff;
outline: none;
appearance: none;
cursor: pointer;
transition: border-color .45s cubic-bezier(0.22, 1, 0.36, 1)
}

.abt-form__select:focus {
border-color: #058A3E
}

.abt-form__select option {
color: #111
}

.abt-form__select-wrap {
position: relative
}

.abt-form__select-arrow {
position: absolute;
right: 16px;
top: 50%;
transform: translateY(-50%);
pointer-events: none;
width: 16px;
height: 16px
}

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

.abt-form__checkbox {
width: 18px;
height: 18px;
border: 2px solid #E9E8E8;
border-radius: 8px;
cursor: pointer;
flex-shrink: 0;
margin-top: 2px;
accent-color: #058A3E;
box-shadow: inset 0 0 0 0 #058a3e00;
transition: box-shadow .1s ease-in-out
}

.abt-form__checkbox:checked {
box-shadow: inset 0 2px 4px 0 #058a3e40
}

.abt-form__privacy-text {
font-size: 13px;
line-height: 1.65;
color: #555;
margin: 0
}

.abt-form__privacy-link {
color: #058A3E;
text-decoration: none;
position: relative;
transition: color .4s ease-in-out
}

.abt-form__privacy-link::before {
content: '';
position: absolute;
left: 0;
bottom: 0;
width: 0;
height: 100%;
background: #058a3e1a;
border-radius: 48px;
transition: width .5s cubic-bezier(0.22, 1, 0.36, 1);
z-index: -1
}

.abt-form__privacy-link:hover::before {
width: 100%
}

.abt-form__privacy-link:hover {
color: #046b30 !important
}

.abt-form__btn {
background: #058A3E;
color: #fff;
border: none;
border-radius: 8px;
padding: 16px 40px;
font-size: 15px;
line-height: 1.4;
font-weight: 700;
cursor: pointer;
outline: 2px solid transparent;
outline-offset: 0;
transition: background .45s cubic-bezier(0.22, 1, 0.36, 1), outline-offset .45s cubic-bezier(0.22, 1, 0.36, 1), outline-color .45s cubic-bezier(0.22, 1, 0.36, 1);
align-self: flex-start
}

.abt-form__btn:hover {
background: #046b30;
outline: 2px solid #058A3E;
outline-offset: 4px
}

.abt-form__btn:active {
box-shadow: inset 0 2px 5px 0 #058a3e40
}

.abt-form__btn:focus-visible {
outline: 2px solid #058A3E;
outline-offset: 4px
}

@media (max-width: 1024px) {
.abt-contact {
grid-template-columns: 1fr;
padding: 40px;
gap: 40px
}
}

@media (max-width: 768px) {
.abt-contact {
padding: 40px 24px
}

.abt-form {
padding: 24px
}

.abt-contact__h2 {
font-size: 28px
}
}

@media (max-width: 480px) {
.abt-contact {
padding: 24px 16px
}

.abt-form__btn {
width: 100%;
text-align: center
}
}

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

.success-pg .result-card {
background: #f4fdf8;
border-radius: 14px;
box-shadow: -1px 6px 20px 0 #058a3e1a;
padding: 40px;
max-width: 520px;
width: 100%;
text-align: center
}

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

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

.success-pg .result-card__heading {
font-size: 28px;
line-height: 1.15;
color: #058A3E;
margin: 0 0 16px
}

.success-pg .result-card__body {
font-size: 15px;
line-height: 1.65;
color: #2d2d2d;
margin: 0 0 40px
}

.success-pg .result-card__link {
display: inline-block;
background: #058A3E;
color: #fff;
font-size: 15px;
line-height: 1.4;
padding: 16px 40px;
border-radius: 8px;
text-decoration: none;
transition: background .5s cubic-bezier(0.22, 1, 0.36, 1), box-shadow .5s cubic-bezier(0.22, 1, 0.36, 1);
box-shadow: -1px 2px 5px 0 #058a3e0f;
outline: 2px solid transparent;
outline-offset: 0
}

.success-pg .result-card__link:hover {
background: #046b30;
box-shadow: -1px 6px 20px 0 #058a3e1a;
outline: 2px solid #058A3E;
outline-offset: 3px
}

.success-pg .result-card__link:focus-visible {
outline: 2px solid #058A3E;
outline-offset: 4px
}

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

.success-pg .result-card {
padding: 24px 16px
}

.success-pg .result-card__heading {
font-size: 21px
}
}