* {
box-sizing: border-box
}

body {
margin: 0;
scrollbar-gutter: stable;
min-height: 100vh;
font-family: 'Rubik', sans-serif
}

.hd-root {
background: linear-gradient(135deg, #1b3a38 0%, #22504d 60%, #2d6b66 100%);
position: relative;
overflow: hidden
}

.hd-root::before {
content: "";
position: absolute;
top: 0;
right: 0;
width: 420px;
height: 100%;
background: linear-gradient(180deg, #3a938d2e 0%, #a9cdc012 100%);
pointer-events: none
}

.hd-band {
display: flex;
align-items: stretch;
justify-content: space-between;
max-width: 1280px;
margin: 0 auto;
padding: 0 56px;
min-height: 96px;
gap: 56px
}

.hd-brand-col {
display: flex;
align-items: center;
gap: 28px;
flex-shrink: 0;
padding: 28px 0
}

.hd-logo-wrap {
width: 60px;
height: 60px;
border-radius: 28px;
background: #e8f5f2;
display: flex;
align-items: center;
justify-content: center;
box-shadow: -1px 3px 3px -2px #3a938d14 -1px 6px 20px -2px #3a938d17;
border: 2px solid #a9cdc073;
flex-shrink: 0
}

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

.hd-brand-text {
display: flex;
flex-direction: column;
gap: 6px
}

.hd-name {
font-size: 23px;
font-weight: 700;
color: #e8f5f2;
line-height: 1.1;
letter-spacing: -.03em;
text-decoration: none
}

.hd-name:focus {
outline: none;
box-shadow: 0 0 0 3px #a9cdc099;
border-radius: 3px
}

.hd-cert {
font-size: 13px;
color: #A9CDC0;
line-height: 1.1;
letter-spacing: .04em;
font-weight: 400;
white-space: nowrap
}

.hd-divider {
width: 1px;
background: linear-gradient(180deg, transparent 0%, #a9cdc059 30%, #a9cdc059 70%, transparent 100%);
align-self: stretch;
flex-shrink: 0
}

.hd-nav-col {
display: flex;
align-items: center;
flex: 1;
justify-content: flex-end;
padding: 14px 0
}

.hd-nav {
display: flex;
flex-wrap: wrap;
gap: 6px;
justify-content: flex-end;
align-items: center
}

.hd-nav a {
font-size: 13px;
font-weight: 700;
color: #c8e4de;
text-decoration: none;
text-transform: uppercase;
letter-spacing: .06em;
line-height: 1.1;
padding: 14px;
border-radius: 3px;
border: 1px solid transparent;
transition: color .45s cubic-bezier(0.16, 1, 0.3, 1), border-color .45s cubic-bezier(0.16, 1, 0.3, 1), background .45s cubic-bezier(0.16, 1, 0.3, 1);
white-space: nowrap;
display: inline-block;
min-height: 44px;
display: flex;
align-items: center
}

.hd-nav a:hover {
color: #e8f5f2;
border-color: #a9cdc066;
background: #a9cdc014
}

.hd-nav a:focus {
outline: none;
box-shadow: 0 0 0 3px #a9cdc08c
}

.hd-nav a.active {
color: #e8f5f2;
border-color: #a9cdc04d;
background: #3a938d40
}

@media (max-width: 1024px) {
.hd-band {
padding: 0 28px;
gap: 28px
}
}

@media (max-width: 768px) {
.hd-band {
flex-direction: column;
align-items: flex-start;
padding: 28px;
gap: 14px;
min-height: auto
}

.hd-brand-col {
padding: 0
}

.hd-divider {
display: none
}

.hd-nav-col {
width: 100%;
justify-content: flex-start;
padding: 0 0 14px
}

.hd-nav {
justify-content: flex-start
}
}

@media (max-width: 360px) {
.hd-band {
padding: 14px
}

.hd-nav a {
font-size: 13px;
padding: 14px 6px
}
}

.ft-root {
background: #1b3a38;
color: #A9CDC0
}

.ft-upper {
max-width: 1280px;
margin: 0 auto;
padding: 56px 56px 28px;
display: grid;
grid-template-columns: 200px 1fr 1fr 1fr;
gap: 56px;
align-items: start
}

.ft-brand-col {
display: flex;
flex-direction: column;
align-items: center;
gap: 14px
}

.ft-logo-wrap {
width: 60px;
height: 60px;
border-radius: 28px;
background: #e8f5f2;
display: flex;
align-items: center;
justify-content: center;
box-shadow: -1px 3px 3px -2px #3a938d14 -1px 6px 20px -2px #3a938d17;
border: 2px solid #a9cdc059;
flex-shrink: 0
}

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

.ft-brand-name {
font-size: 15px;
font-weight: 700;
color: #e8f5f2;
line-height: 1.1;
text-align: center;
letter-spacing: -.01em
}

.ft-group {
display: flex;
flex-direction: column;
gap: 14px
}

.ft-group-label {
font-size: 13px;
font-weight: 700;
color: #e8f5f2;
text-transform: uppercase;
letter-spacing: .08em;
line-height: 1.1;
padding-bottom: 6px;
border-bottom: 1px solid #a9cdc02e
}

.ft-group a {
font-size: 15px;
color: #A9CDC0;
text-decoration: none;
line-height: 1.75;
transition: color .4s ease-in-out;
display: block
}

.ft-group a:hover {
color: #e8f5f2
}

.ft-group a:focus {
outline: none;
box-shadow: 0 0 0 3px #a9cdc080;
border-radius: 3px
}

.ft-contact-item {
font-size: 15px;
color: #A9CDC0;
line-height: 1.75
}

.ft-contact-item a {
color: #A9CDC0;
text-decoration: none;
transition: color .4s ease-in-out
}

.ft-contact-item a:hover {
color: #e8f5f2
}

.ft-contact-item a:focus {
outline: none;
box-shadow: 0 0 0 3px #a9cdc080;
border-radius: 3px
}

.ft-lower {
border-top: 1px solid #a9cdc026;
max-width: 1280px;
margin: 0 auto;
padding: 28px 56px;
display: flex;
align-items: center;
justify-content: space-between;
gap: 28px;
flex-wrap: wrap
}

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

.ft-legal {
display: flex;
gap: 28px;
flex-wrap: wrap
}

.ft-legal a {
font-size: 13px;
color: #a9cdc099;
text-decoration: none;
transition: color .4s ease-in-out;
line-height: 1.75
}

.ft-legal a:hover {
color: #e8f5f2
}

.ft-legal a:focus {
outline: none;
box-shadow: 0 0 0 3px #a9cdc080;
border-radius: 3px
}

@media (max-width: 1024px) {
.ft-upper {
grid-template-columns: 1fr 1fr;
padding: 56px 28px 28px;
gap: 28px
}

.ft-brand-col {
grid-column: 1 / -1;
flex-direction: row;
align-items: center;
justify-content: flex-start;
gap: 14px
}

.ft-lower {
padding: 28px
}
}

@media (max-width: 768px) {
.ft-upper {
grid-template-columns: 1fr;
padding: 28px
}

.ft-brand-col {
grid-column: auto
}

.ft-lower {
flex-direction: column;
align-items: flex-start;
gap: 14px;
padding: 28px
}
}

@media (max-width: 360px) {
.ft-upper {
padding: 28px 14px
}

.ft-lower {
padding: 14px
}
}

.ck-bar {
position: fixed;
top: 0;
left: 0;
right: 0;
z-index: 8000;
display: none;
transform: translateX(-100%);
transition: transform .45s cubic-bezier(0.16, 1, 0.3, 1)
}

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

.ck-bar-inner {
background: #22504d;
border-radius: 0 0 28px 0;
box-shadow: -1px 8px 40px -2px #3a938d1f;
max-width: 720px;
margin: 0;
padding: 28px;
display: flex;
flex-direction: column;
gap: 14px
}

.ck-desc {
font-size: 15px;
color: #c8e4de;
line-height: 1.75;
font-family: 'Rubik', sans-serif
}

.ck-desc a {
color: #A9CDC0;
text-decoration: underline;
transition: color .35s ease-in-out
}

.ck-desc a:hover {
color: #e8f5f2
}

.ck-toggles {
display: none;
flex-direction: column;
gap: 14px;
padding: 14px 0;
border-top: 1px solid #a9cdc033
}

.ck-toggles.ck-open {
display: flex
}

.ck-toggle-row {
display: flex;
align-items: center;
justify-content: space-between;
gap: 14px
}

.ck-toggle-label {
font-size: 13px;
color: #c8e4de;
font-family: 'Rubik', sans-serif;
line-height: 1.75
}

.ck-toggle-label span {
font-size: 13px;
color: #a9cdc099;
display: block
}

.ck-switch {
position: relative;
width: 44px;
height: 24px;
flex-shrink: 0
}

.ck-switch input {
opacity: 0;
width: 0;
height: 0;
position: absolute
}

.ck-slider {
position: absolute;
inset: 0;
background: #a9cdc033;
border-radius: 28px;
cursor: pointer;
transition: background .45s cubic-bezier(0.16, 1, 0.3, 1);
border: 1px solid #a9cdc04d
}

.ck-slider::after {
content: "";
position: absolute;
width: 18px;
height: 18px;
border-radius: 28px;
background: #A9CDC0;
top: 2px;
left: 2px;
transition: transform .45s cubic-bezier(0.16, 1, 0.3, 1), background .45s cubic-bezier(0.16, 1, 0.3, 1)
}

.ck-switch input:checked+.ck-slider {
background: #3a938d99
}

.ck-switch input:checked+.ck-slider::after {
transform: translateX(20px);
background: #e8f5f2
}

.ck-switch input:focus+.ck-slider {
box-shadow: 0 0 0 3px #a9cdc080
}

.ck-always-on {
font-size: 13px;
color: #a9cdc099;
font-family: 'Rubik', sans-serif;
white-space: nowrap
}

.ck-btns {
display: flex;
gap: 14px;
flex-wrap: wrap;
align-items: center
}

.ck-btn {
font-size: 13px;
font-weight: 700;
text-transform: uppercase;
letter-spacing: .06em;
line-height: 1.1;
padding: 14px 28px;
border-radius: 3px;
cursor: pointer;
font-family: 'Rubik', sans-serif;
background: transparent;
color: #c8e4de;
border: 1px solid #a9cdc073;
min-height: 44px;
transition: color .45s cubic-bezier(0.16, 1, 0.3, 1), border-color .45s cubic-bezier(0.16, 1, 0.3, 1), background .45s cubic-bezier(0.16, 1, 0.3, 1);
position: relative
}

.ck-btn::before,
.ck-btn::after {
content: "";
position: absolute;
background: #a9cdc080;
transition: width .45s cubic-bezier(0.16, 1, 0.3, 1), height .45s cubic-bezier(0.16, 1, 0.3, 1)
}

.ck-btn::before {
top: 0;
left: 0;
width: 0;
height: 1px
}

.ck-btn::after {
bottom: 0;
right: 0;
width: 0;
height: 1px
}

.ck-btn:hover::before,
.ck-btn:hover::after {
width: 100%
}

.ck-btn:hover {
color: #e8f5f2;
border-color: #a9cdc0b3;
background: #a9cdc014
}

.ck-btn:focus {
outline: none;
box-shadow: 0 0 0 3px #a9cdc080
}

.ck-settings-link {
font-size: 13px;
color: #a9cdc0b3;
background: none;
border: none;
cursor: pointer;
font-family: 'Rubik', sans-serif;
text-decoration: underline;
padding: 6px 0;
min-height: 44px;
transition: color .4s ease-in-out
}

.ck-settings-link:hover {
color: #e8f5f2
}

.ck-settings-link:focus {
outline: none;
box-shadow: 0 0 0 3px #a9cdc080;
border-radius: 3px
}

@media (max-width: 768px) {
.ck-bar-inner {
max-width: 100%;
border-radius: 0 0 28px 28px
}

.ck-btns {
flex-direction: column;
align-items: stretch
}

.ck-btn {
text-align: center
}
}

.doc-text {
max-width: 1280px;
margin: 0 auto;
padding: 56px 28px;
color: #2a2a2a
}

.doc-text h1 {
font-size: 62px;
line-height: 1.1;
letter-spacing: -.03em;
margin-bottom: 28px;
margin-top: 0;
color: #1b1b1b
}

.doc-text h2 {
font-size: 32px;
line-height: 1.1;
letter-spacing: -.02em;
margin-top: 56px;
margin-bottom: 14px;
color: #1b1b1b;
padding-bottom: 14px;
border-bottom: 2px solid #E5F3EB
}

.doc-text h3 {
font-size: 23px;
line-height: 1.1;
letter-spacing: -.015em;
margin-top: 28px;
margin-bottom: 14px;
color: #222
}

.doc-text h4 {
font-size: 18px;
line-height: 1.75;
letter-spacing: -.01em;
margin-top: 28px;
margin-bottom: 6px;
color: #222
}

.doc-text h5 {
font-size: 15px;
line-height: 1.75;
letter-spacing: 0;
margin-top: 14px;
margin-bottom: 6px;
color: #333
}

.doc-text h6 {
font-size: 13px;
line-height: 1.75;
letter-spacing: .02em;
text-transform: uppercase;
margin-top: 14px;
margin-bottom: 6px;
color: #3A938D
}

.doc-text p {
font-size: 18px;
line-height: 1.75;
margin-top: 0;
margin-bottom: 14px;
color: #2a2a2a
}

.doc-text ul,
.doc-text ol {
font-size: 18px;
line-height: 1.75;
margin-top: 0;
margin-bottom: 14px;
padding-left: 28px;
color: #2a2a2a
}

.doc-text ul {
list-style: none;
padding-left: 14px
}

.doc-text ul li {
padding-left: 14px;
position: relative
}

.doc-text ul li::before {
content: "";
position: absolute;
left: 0;
top: .75em;
width: 6px;
height: 6px;
border-radius: 50%;
background-color: #3A938D
}

.doc-text ol {
list-style: decimal
}

.doc-text ol li {
padding-left: 6px
}

.doc-text li {
margin-bottom: 6px
}

.doc-text li:last-child {
margin-bottom: 0
}

.doc-text ul ul,
.doc-text ul ol,
.doc-text ol ul,
.doc-text ol ol {
margin-top: 6px;
margin-bottom: 6px
}

.doc-text strong,
.doc-text b {
font-weight: 700;
color: #1b1b1b
}

.doc-text a {
color: #3A938D;
text-decoration: underline;
text-decoration-thickness: 1px;
text-underline-offset: 3px;
transition: color .45s cubic-bezier(0.16, 1, 0.3, 1), text-decoration-color .45s cubic-bezier(0.16, 1, 0.3, 1)
}

.doc-text a:hover {
color: #2a6e6a;
text-decoration-color: #A9CDC0
}

.doc-text a:visited {
color: #2a6e6a
}

.doc-text div {
margin-bottom: 14px
}

.doc-text div:last-child {
margin-bottom: 0
}

@media (max-width: 1024px) {
.doc-text {
padding: 56px 28px
}

.doc-text h1 {
font-size: 32px
}

.doc-text h2 {
font-size: 23px;
margin-top: 28px
}
}

@media (max-width: 768px) {
.doc-text {
padding: 28px 14px
}

.doc-text h1 {
font-size: 32px
}

.doc-text h2 {
font-size: 23px;
margin-top: 28px
}

.doc-text h3 {
font-size: 18px
}

.doc-text p,
.doc-text ul,
.doc-text ol {
font-size: 15px
}
}

@media (max-width: 360px) {
.doc-text {
padding: 28px 6px
}

.doc-text h1 {
font-size: 23px
}

.doc-text h2 {
font-size: 18px
}

.doc-text h3 {
font-size: 15px
}

.doc-text p,
.doc-text ul,
.doc-text ol {
font-size: 13px
}
}

.cmp-pg {
max-width: 100%;
overflow-x: clip
}

.cmp-pg ::selection {
background: #3A938D;
color: #fff
}

.cmp-pg .cmp-inner {
max-width: 1280px;
margin: 0 auto;
padding: 0 56px
}

@keyframes shake-atten {

0%,
100% {
transform: translateX(0)
}

15% {
transform: translateX(-4px) rotate(-0.5deg)
}

30% {
transform: translateX(4px) rotate(0.5deg)
}

45% {
transform: translateX(-3px)
}

60% {
transform: translateX(3px)
}

75% {
transform: translateX(-2px)
}

90% {
transform: translateX(2px)
}
}

@keyframes line-draw {
from {
width: 0
}

to {
width: 100%
}
}

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

to {
transform: scaleX(1)
}
}

.cmp-pg .t-block {
position: relative;
background: #3A938D;
padding: 96px 0 56px;
overflow: hidden
}

.cmp-pg .t-block::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
height: 3px;
background: #E5F3EB
}

.cmp-pg .t-block::after {
content: '';
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 1px;
background: linear-gradient(90deg, transparent 0%, #A9CDC0 50%, transparent 100%)
}

.cmp-pg .t-block .t-img-lower {
position: absolute;
bottom: 0;
right: 0;
width: 42%;
height: 68%;
overflow: hidden
}

.cmp-pg .t-block .t-img-lower img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
filter: grayscale(20%) brightness(0.75) contrast(1.05);
opacity: .38
}

.cmp-pg .t-block .t-img-lower::after {
content: '';
position: absolute;
inset: 0;
background: linear-gradient(135deg, #3A938D 50%, transparent 50%)
}

.cmp-pg .t-block .t-col {
position: relative;
z-index: 2;
max-width: 720px
}

.cmp-pg .t-block .t-label {
display: inline-block;
font-size: 13px;
letter-spacing: .12em;
text-transform: uppercase;
color: #A9CDC0;
margin-bottom: 14px;
border-bottom: 1px solid #A9CDC0;
padding-bottom: 6px
}

.cmp-pg .t-block .t-h1 {
font-size: 62px;
line-height: 1.1;
color: #fff;
letter-spacing: -.025em;
margin: 0 0 28px
}

.cmp-pg .t-block .t-desc {
font-size: 18px;
line-height: 1.75;
color: #E5F3EB;
max-width: 560px
}

.cmp-pg .t-block .t-tick-row {
display: flex;
flex-direction: row;
gap: 28px;
margin-top: 28px;
align-items: center
}

.cmp-pg .t-block .t-stat {
display: flex;
flex-direction: column;
gap: 6px
}

.cmp-pg .t-block .t-stat-num {
font-size: 32px;
line-height: 1.1;
color: #fff;
font-weight: 700;
letter-spacing: -.02em
}

.cmp-pg .t-block .t-stat-lbl {
font-size: 13px;
color: #A9CDC0;
letter-spacing: .06em;
text-transform: uppercase
}

.cmp-pg .t-block .t-divider-stat {
width: 1px;
height: 40px;
background: #a9cdc066
}

.cmp-pg .fmt-row {
display: flex;
flex-direction: row;
gap: 56px;
align-items: flex-start
}

.cmp-pg .plan-sec {
background: #fff;
padding: 96px 0;
position: relative
}

.cmp-pg .plan-sec::before {
content: '';
position: absolute;
top: 0;
left: 50%;
transform: translateX(-50%);
width: 1px;
height: 28px;
background: #A9CDC0
}

.cmp-pg .plan-sec::after {
content: '';
position: absolute;
top: 28px;
left: 50%;
transform: translateX(-50%);
width: 8px;
height: 8px;
border-radius: 50%;
background: #3A938D;
margin-left: -4px
}

.cmp-pg .plan-hd {
margin-bottom: 56px
}

.cmp-pg .plan-hd .sec-label {
font-size: 13px;
letter-spacing: .1em;
text-transform: uppercase;
color: #3A938D;
display: block;
margin-bottom: 14px
}

.cmp-pg .plan-hd .sec-h2 {
font-size: 32px;
line-height: 1.1;
letter-spacing: -.02em;
color: #1b3a38;
margin: 0 0 14px;
position: relative;
display: inline-block
}

.cmp-pg .plan-hd .sec-h2::after {
content: '';
position: absolute;
bottom: -6px;
left: 0;
height: 2px;
background: #3A938D;
width: 0;
animation: line-draw .55s cubic-bezier(0.16, 1, 0.3, 1) .4s forwards
}

.cmp-pg .plan-hd .sec-sub {
font-size: 15px;
line-height: 1.75;
color: #3d5c58;
max-width: 600px
}

.cmp-pg .plan-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 28px;
align-items: start
}

.cmp-pg .p-card {
border-radius: 28px;
padding: 28px;
position: relative;
box-shadow: -1px 3px 3px -2px #3a938d14 -1px 6px 20px -2px #3a938d17;
background: #fff;
border: 1.5px solid #E5F3EB;
transition: box-shadow .45s cubic-bezier(0.16, 1, 0.3, 1), border-color .45s cubic-bezier(0.16, 1, 0.3, 1)
}

.cmp-pg .p-card:hover {
box-shadow: -1px 8px 40px -2px #3a938d1f;
border-color: #A9CDC0
}

.cmp-pg .p-card.featured {
background: #3A938D;
border-color: #3A938D;
box-shadow: -1px 8px 40px -2px #3a938d2e
}

.cmp-pg .p-card.featured .p-name {
color: #E5F3EB
}

.cmp-pg .p-card.featured .p-price {
color: #fff
}

.cmp-pg .p-card.featured .p-price-note {
color: #A9CDC0
}

.cmp-pg .p-card.featured .p-desc {
color: #E5F3EB
}

.cmp-pg .p-card.featured .p-feat-item {
color: #E5F3EB;
border-bottom-color: #a9cdc040
}

.cmp-pg .p-card.featured .p-feat-item .feat-dot {
background: #E5F3EB
}

.cmp-pg .p-card.featured .p-badge {
background: #E5F3EB;
color: #3A938D
}

.cmp-pg .p-badge {
display: inline-block;
font-size: 13px;
letter-spacing: .08em;
text-transform: uppercase;
background: #E5F3EB;
color: #3A938D;
padding: 6px 14px;
border-radius: 3px;
margin-bottom: 14px
}

.cmp-pg .p-name {
font-size: 23px;
line-height: 1.1;
color: #1b3a38;
letter-spacing: -.015em;
margin: 0 0 6px
}

.cmp-pg .p-price {
font-size: 32px;
line-height: 1.1;
color: #3A938D;
font-weight: 700;
letter-spacing: -.02em;
margin: 14px 0 6px
}

.cmp-pg .p-price-note {
font-size: 13px;
color: #6a8a86;
letter-spacing: .04em;
margin-bottom: 14px
}

.cmp-pg .p-desc {
font-size: 15px;
line-height: 1.75;
color: #3d5c58;
margin: 0 0 28px
}

.cmp-pg .p-feat-list {
list-style: none;
padding: 0;
margin: 0 0 28px
}

.cmp-pg .p-feat-item {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 14px;
padding: 14px 0;
border-bottom: 1px solid #E5F3EB;
font-size: 15px;
line-height: 1.75;
color: #2a4a47
}

.cmp-pg .p-feat-item:last-child {
border-bottom: none
}

.cmp-pg .feat-dot {
width: 6px;
height: 6px;
border-radius: 50%;
background: #3A938D;
flex-shrink: 0;
margin-top: 8px
}

.cmp-pg .p-btn {
display: block;
width: 100%;
padding: 14px 28px;
border-radius: 3px;
font-size: 13px;
letter-spacing: .1em;
text-transform: uppercase;
cursor: pointer;
border: 2px solid #3A938D;
background: transparent;
color: #3A938D;
position: relative;
overflow: hidden;
transition: color .45s cubic-bezier(0.16, 1, 0.3, 1)
}

.cmp-pg .p-btn::before {
content: '';
position: absolute;
inset: 0;
background: #3A938D;
transform: scaleX(0);
transform-origin: left;
transition: transform .45s cubic-bezier(0.16, 1, 0.3, 1);
z-index: 0
}

.cmp-pg .p-btn:hover::before {
transform: scaleX(1)
}

.cmp-pg .p-btn:hover {
color: #fff
}

.cmp-pg .p-btn span {
position: relative;
z-index: 1
}

.cmp-pg .p-card.featured .p-btn {
border-color: #E5F3EB;
color: #E5F3EB
}

.cmp-pg .p-card.featured .p-btn::before {
background: #E5F3EB
}

.cmp-pg .p-card.featured .p-btn:hover {
color: #3A938D
}

.cmp-pg .detail-sec {
background: #E5F3EB;
padding: 96px 0;
position: relative
}

.cmp-pg .detail-sec::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
height: 1px;
background: repeating-linear-gradient(90deg, #A9CDC0 0px, #A9CDC0 8px, transparent 8px, transparent 20px)
}

.cmp-pg .detail-sec::after {
content: '';
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 1px;
background: repeating-linear-gradient(90deg, #A9CDC0 0px, #A9CDC0 8px, transparent 8px, transparent 20px)
}

.cmp-pg .detail-layout {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 56px;
align-items: start
}

.cmp-pg .detail-left .sec-h2 {
font-size: 32px;
line-height: 1.1;
letter-spacing: -.02em;
color: #1b3a38;
margin: 0 0 28px;
position: relative;
display: inline-block
}

.cmp-pg .detail-left .sec-h2::after {
content: '';
position: absolute;
bottom: -6px;
left: 0;
height: 2px;
background: #3A938D;
width: 0;
animation: line-draw .55s cubic-bezier(0.16, 1, 0.3, 1) .6s forwards
}

.cmp-pg .detail-left .body-p {
font-size: 15px;
line-height: 1.75;
color: #2a4a47;
margin-bottom: 28px
}

.cmp-pg .detail-left .accent-bar {
border-left: none;
padding-left: 14px;
position: relative
}

.cmp-pg .detail-left .accent-bar::before {
content: '';
position: absolute;
left: 0;
top: 4px;
bottom: 4px;
width: 3px;
background: #3A938D;
border-radius: 3px
}

.cmp-pg .detail-left .accent-bar .body-p {
margin-bottom: 0
}

.cmp-pg .comp-tbl {
background: #fff;
border-radius: 28px;
overflow: hidden;
box-shadow: -1px 6px 20px -2px #3a938d17
}

.cmp-pg .tbl-head {
display: grid;
grid-template-columns: 2fr 1fr 1fr 1fr;
background: #3A938D;
padding: 14px 28px;
gap: 14px
}

.cmp-pg .tbl-head .th {
font-size: 13px;
letter-spacing: .08em;
text-transform: uppercase;
color: #E5F3EB;
line-height: 1.1
}

.cmp-pg .tbl-row {
display: grid;
grid-template-columns: 2fr 1fr 1fr 1fr;
padding: 14px 28px;
gap: 14px;
border-bottom: 1px solid #E5F3EB;
align-items: center;
transition: background .35s ease-in-out
}

.cmp-pg .tbl-row:last-child {
border-bottom: none
}

.cmp-pg .tbl-row:hover {
background: #f0faf6
}

.cmp-pg .tbl-row .td {
font-size: 15px;
line-height: 1.75;
color: #2a4a47
}

.cmp-pg .tbl-row .td-feat {
font-size: 15px;
color: #1b3a38;
font-weight: 600
}

.cmp-pg .tbl-row .td-check {
display: flex;
flex-direction: row;
align-items: center
}

.cmp-pg .chk-yes {
width: 18px;
height: 18px;
border-radius: 50%;
background: #3A938D;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0
}

.cmp-pg .chk-yes svg {
width: 10px;
height: 10px
}

.cmp-pg .chk-no {
width: 18px;
height: 18px;
border-radius: 50%;
background: #E5F3EB;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0
}

.cmp-pg .chk-no svg {
width: 8px;
height: 8px
}

.cmp-pg .review-sec {
background: #1b3a38;
padding: 96px 0;
position: relative
}

.cmp-pg .review-sec::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
height: 4px;
background: linear-gradient(90deg, #3A938D 50%, #E5F3EB 50%)
}

.cmp-pg .review-hd .sec-label {
font-size: 13px;
letter-spacing: .1em;
text-transform: uppercase;
color: #A9CDC0;
display: block;
margin-bottom: 14px
}

.cmp-pg .review-hd .sec-h2 {
font-size: 32px;
line-height: 1.1;
letter-spacing: -.02em;
color: #fff;
margin: 0 0 56px
}

.cmp-pg .review-layout {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 56px;
align-items: start
}

.cmp-pg .rev-cards {
display: flex;
flex-direction: column;
gap: 28px
}

.cmp-pg .rev-card {
background: #a9cdc014;
border-radius: 28px;
padding: 28px;
border: 1px solid #a9cdc033;
box-shadow: -1px 3px 3px -2px #a9cdc014;
transition: border-color .5s cubic-bezier(0.16, 1, 0.3, 1), background .5s cubic-bezier(0.16, 1, 0.3, 1)
}

.cmp-pg .rev-card:hover {
border-color: #a9cdc073;
background: #a9cdc021
}

.cmp-pg .rev-top {
display: flex;
flex-direction: row;
gap: 14px;
align-items: center;
margin-bottom: 14px
}

.cmp-pg .rev-portrait {
width: 52px;
height: 78px;
border-radius: 28px;
overflow: hidden;
flex-shrink: 0
}

.cmp-pg .rev-portrait img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center
}

.cmp-pg .rev-meta {
display: flex;
flex-direction: column;
gap: 6px
}

.cmp-pg .rev-name {
font-size: 15px;
line-height: 1.1;
color: #fff;
font-weight: 600
}

.cmp-pg .rev-role {
font-size: 13px;
color: #A9CDC0;
letter-spacing: .04em
}

.cmp-pg .rev-plan-tag {
display: inline-block;
font-size: 13px;
letter-spacing: .07em;
text-transform: uppercase;
background: #3a938d4d;
color: #A9CDC0;
padding: 6px 14px;
border-radius: 3px
}

.cmp-pg .rev-text {
font-size: 15px;
line-height: 1.75;
color: #cde0dc
}

.cmp-pg .rev-metrics {
display: flex;
flex-direction: column;
gap: 28px
}

.cmp-pg .rev-metric-hd {
font-size: 18px;
line-height: 1.75;
color: #E5F3EB;
margin: 0 0 28px
}

.cmp-pg .metric-item {
display: flex;
flex-direction: column;
gap: 6px
}

.cmp-pg .metric-label {
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: center
}

.cmp-pg .metric-name {
font-size: 13px;
letter-spacing: .06em;
text-transform: uppercase;
color: #A9CDC0
}

.cmp-pg .metric-val {
font-size: 15px;
color: #fff;
font-weight: 600
}

.cmp-pg .metric-bar-bg {
height: 6px;
background: #a9cdc02e;
border-radius: 3px;
overflow: hidden
}

.cmp-pg .metric-bar-fill {
height: 100%;
background: #3A938D;
border-radius: 3px;
transform-origin: left;
animation: bar-in .55s cubic-bezier(0.16, 1, 0.3, 1) .5s both
}

.cmp-pg .rev-note {
margin-top: 28px;
padding: 14px;
border-radius: 3px;
background: #e5f3eb12;
border: 1px dashed #a9cdc059
}

.cmp-pg .rev-note p {
font-size: 13px;
line-height: 1.75;
color: #A9CDC0;
margin: 0
}

.cmp-pg .shake-el {
animation: shake-atten .55s cubic-bezier(0.16, 1, 0.3, 1) 2.5s both
}

@media (max-width: 1024px) {
.cmp-pg .cmp-inner {
padding: 0 28px
}

.cmp-pg .plan-grid {
grid-template-columns: 1fr 1fr;
gap: 28px
}

.cmp-pg .plan-grid .p-card:last-child {
grid-column: 1 / -1;
max-width: 480px;
margin: 0 auto
}

.cmp-pg .detail-layout {
grid-template-columns: 1fr;
gap: 28px
}

.cmp-pg .review-layout {
grid-template-columns: 1fr;
gap: 56px
}

.cmp-pg .t-block .t-h1 {
font-size: 42px
}
}

@media (max-width: 768px) {
.cmp-pg .cmp-inner {
padding: 0 14px
}

.cmp-pg .plan-grid {
grid-template-columns: 1fr
}

.cmp-pg .plan-grid .p-card:last-child {
grid-column: auto;
max-width: 100%
}

.cmp-pg .t-block {
padding: 56px 0
}

.cmp-pg .t-block .t-h1 {
font-size: 32px
}

.cmp-pg .t-block .t-img-lower {
opacity: .2
}

.cmp-pg .t-tick-row {
flex-wrap: wrap;
gap: 14px
}

.cmp-pg .tbl-head,
.cmp-pg .tbl-row {
grid-template-columns: 1.5fr 1fr 1fr 1fr;
padding: 14px;
gap: 6px
}

.cmp-pg .tbl-head .th,
.cmp-pg .tbl-row .td,
.cmp-pg .tbl-row .td-feat {
font-size: 13px
}

.cmp-pg .plan-sec,
.cmp-pg .detail-sec,
.cmp-pg .review-sec {
padding: 56px 0
}

.cmp-pg .fmt-row {
flex-direction: column;
gap: 14px
}
}

@media (max-width: 360px) {
.cmp-pg .t-block .t-h1 {
font-size: 23px
}

.cmp-pg .tbl-head,
.cmp-pg .tbl-row {
grid-template-columns: 1.2fr repeat(3, 0.8fr);
padding: 6px;
gap: 6px
}
}

.ab {
display: block;
width: 100%;
overflow-x: clip;
background: #fff
}

.ab .schema-data {
display: none
}

.ab .pt-one {
display: grid;
grid-template-columns: 1fr 1fr;
min-height: 560px;
position: relative
}

.ab .pt-one .img-side {
position: relative;
overflow: hidden
}

.ab .pt-one .img-side img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
filter: saturate(0.7) contrast(1.1);
will-change: transform;
transition: transform .55s cubic-bezier(0.16, 1, 0.3, 1)
}

.ab .pt-one .img-side::after {
content: '';
position: absolute;
inset: 0;
background: linear-gradient(120deg, #3a938d2e 50%, transparent 50%);
pointer-events: none
}

.ab .pt-one .curved-deco {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
pointer-events: none;
overflow: hidden
}

.ab .pt-one .curved-deco svg {
position: absolute;
bottom: -28px;
right: -28px;
opacity: .13
}

.ab .pt-one .txt-side {
background: #fff;
padding: 96px 56px;
display: flex;
flex-direction: column;
justify-content: center;
position: relative
}

.ab .pt-one .txt-side .lbl-tag {
display: inline-block;
font-size: 13px;
letter-spacing: .12em;
text-transform: uppercase;
color: #3A938D;
border: 1px solid #A9CDC0;
border-radius: 3px;
padding: 6px 14px;
margin-bottom: 28px;
width: fit-content
}

.ab .pt-one .txt-side .h1-main {
font-size: 62px;
line-height: 1.1;
letter-spacing: -.03em;
color: #1b2e2d;
margin: 0 0 28px;
position: relative;
display: inline-block
}

.ab .pt-one .txt-side .h1-main .underline-draw {
display: block;
height: 3px;
background: #3A938D;
width: 0;
border-radius: 3px;
animation: draw-line .55s cubic-bezier(0.16, 1, 0.3, 1) .4s forwards
}

@keyframes draw-line {
to {
width: 100%
}
}

.ab .pt-one .txt-side .counter-row {
display: flex;
flex-direction: row;
gap: 28px;
margin-bottom: 28px;
align-items: flex-end
}

.ab .pt-one .txt-side .counter-row .c-item {
display: flex;
flex-direction: column;
gap: 6px
}

.ab .pt-one .txt-side .counter-row .c-num {
font-size: 32px;
line-height: 1.1;
letter-spacing: -.02em;
color: #3A938D;
font-weight: 700
}

.ab .pt-one .txt-side .counter-row .c-lbl {
font-size: 13px;
line-height: 1.75;
color: #4a6866;
text-transform: uppercase;
letter-spacing: .08em
}

.ab .pt-one .txt-side .lead-p {
font-size: 18px;
line-height: 1.75;
color: #2c3e3d;
margin: 0;
max-width: 480px
}

.ab .pt-one .slide-left {
animation: slide-from-left .5s cubic-bezier(0.16, 1, 0.3, 1) both
}

.ab .pt-one .slide-right {
animation: slide-from-right .5s cubic-bezier(0.16, 1, 0.3, 1) .15s both
}

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

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

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

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

.ab .pt-two {
background: #E5F3EB;
padding: 96px 0;
position: relative;
overflow: hidden
}

.ab .pt-two .circles-deco {
position: absolute;
top: -56px;
right: -56px;
pointer-events: none;
opacity: .09
}

.ab .pt-two .inner-wrap {
max-width: 1280px;
margin: 0 auto;
padding: 0 56px;
display: grid;
grid-template-columns: 1fr 340px;
gap: 56px;
align-items: start
}

.ab .pt-two .left-col {
display: flex;
flex-direction: column;
gap: 56px
}

.ab .pt-two .right-col {
display: flex;
flex-direction: column;
gap: 28px
}

.ab .pt-two .sec-label {
font-size: 13px;
text-transform: uppercase;
letter-spacing: .12em;
color: #3A938D;
margin-bottom: 14px;
display: block
}

.ab .pt-two .h2-main {
font-size: 32px;
line-height: 1.1;
letter-spacing: -.02em;
color: #1b2e2d;
margin: 0 0 28px;
position: relative;
display: inline-block
}

.ab .pt-two .h2-main::after {
content: '';
display: block;
height: 2px;
background: #3A938D;
width: 0;
border-radius: 3px;
transition: width .45s cubic-bezier(0.16, 1, 0.3, 1)
}

.ab .pt-two .h2-main:hover::after {
width: 100%
}

.ab .pt-two .body-p {
font-size: 15px;
line-height: 1.75;
color: #2c3e3d;
margin: 0 0 14px
}

.ab .pt-two .grid-facts {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 14px
}

.ab .pt-two .fact-item {
background: #fff;
border-radius: 28px;
padding: 28px;
box-shadow: -1px 6px 20px -2px #3a938d17;
display: flex;
flex-direction: column;
gap: 6px;
transition: box-shadow .45s ease-in-out, transform .45s cubic-bezier(0.16, 1, 0.3, 1);
animation: slide-from-left .5s cubic-bezier(0.16, 1, 0.3, 1) .2s both
}

.ab .pt-two .fact-item:hover {
box-shadow: -1px 8px 40px -2px #3a938d1f;
transform: translateY(-3px)
}

.ab .pt-two .fact-item .fi-num {
font-size: 32px;
line-height: 1.1;
letter-spacing: -.02em;
color: #3A938D;
font-weight: 700
}

.ab .pt-two .fact-item .fi-desc {
font-size: 13px;
line-height: 1.75;
color: #4a6866
}

.ab .pt-two .img-pair {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 14px;
margin-top: 14px
}

.ab .pt-two .img-pair .img-wrap {
overflow: hidden;
border-radius: 3px;
height: 200px;
box-shadow: -1px 3px 3px -2px #3a938d14
}

.ab .pt-two .img-pair .img-wrap img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
transition: transform .55s cubic-bezier(0.16, 1, 0.3, 1)
}

.ab .pt-two .img-pair .img-wrap:hover img {
transform: scale(1.05)
}

.ab .pt-two .profile-card {
background: #fff;
border-radius: 3px;
box-shadow: -1px 6px 20px -2px #3a938d17;
padding: 28px;
display: flex;
flex-direction: column;
gap: 14px;
animation: slide-from-right .5s cubic-bezier(0.16, 1, 0.3, 1) .25s both
}

.ab .pt-two .profile-card .portrait-wrap {
width: 80px;
height: 107px;
overflow: hidden;
flex-shrink: 0
}

.ab .pt-two .profile-card .portrait-wrap img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block
}

.ab .pt-two .profile-card .prof-name {
font-size: 18px;
line-height: 1.1;
color: #1b2e2d;
font-weight: 700;
margin: 0
}

.ab .pt-two .profile-card .prof-role {
font-size: 13px;
line-height: 1.75;
color: #3A938D;
text-transform: uppercase;
letter-spacing: .08em
}

.ab .pt-two .profile-card .prof-quote {
font-size: 15px;
line-height: 1.75;
color: #2c3e3d;
margin: 0;
font-style: italic
}

.ab .pt-two .approach-list {
display: flex;
flex-direction: column;
gap: 14px;
list-style: none;
padding: 0;
margin: 0
}

.ab .pt-two .approach-list li {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 14px;
font-size: 15px;
line-height: 1.75;
color: #2c3e3d
}

.ab .pt-two .approach-list li .a-icon {
flex-shrink: 0;
margin-top: 4px
}

.ab .pt-two .contact-strip {
background: #3A938D;
border-radius: 28px;
padding: 28px;
display: flex;
flex-direction: column;
gap: 14px;
box-shadow: -1px 8px 40px -2px #3a938d1f
}

.ab .pt-two .contact-strip .cs-head {
font-size: 18px;
line-height: 1.1;
color: #fff;
font-weight: 700;
margin: 0
}

.ab .pt-two .contact-strip .cs-item {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 14px;
font-size: 13px;
line-height: 1.75;
color: #E5F3EB
}

.ab .pt-two .contact-strip .cs-item a {
color: #E5F3EB;
text-decoration: none;
transition: color .45s ease-in-out
}

.ab .pt-two .contact-strip .cs-item a:hover {
color: #fff
}

.ab .pt-two .cta-btn {
display: inline-block;
background: #fff;
color: #3A938D;
font-size: 13px;
letter-spacing: .1em;
text-transform: uppercase;
padding: 14px 28px;
border-radius: 3px;
text-decoration: none;
font-weight: 700;
position: relative;
overflow: hidden;
border: 2px solid transparent;
transition: color .45s ease-in-out, background .45s ease-in-out
}

.ab .pt-two .cta-btn::before,
.ab .pt-two .cta-btn::after {
content: '';
position: absolute;
background: #3A938D;
transition: width .45s cubic-bezier(0.16, 1, 0.3, 1), height .45s cubic-bezier(0.16, 1, 0.3, 1)
}

.ab .pt-two .cta-btn::before {
top: 0;
left: 0;
width: 0;
height: 2px
}

.ab .pt-two .cta-btn::after {
bottom: 0;
right: 0;
width: 0;
height: 2px
}

.ab .pt-two .cta-btn:hover::before,
.ab .pt-two .cta-btn:hover::after {
width: 100%
}

.ab .pt-two .cta-btn:hover {
color: #3A938D;
background: #E5F3EB
}

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

.ab .pt-one .img-side {
height: 360px
}

.ab .pt-one .txt-side {
padding: 56px 28px
}

.ab .pt-one .txt-side .h1-main {
font-size: 32px
}

.ab .pt-two .inner-wrap {
grid-template-columns: 1fr;
padding: 0 28px
}

.ab .pt-two .right-col {
order: -1
}
}

@media (max-width: 768px) {
.ab .pt-two .grid-facts {
grid-template-columns: 1fr
}

.ab .pt-two .img-pair {
grid-template-columns: 1fr
}

.ab .pt-one .txt-side .counter-row {
flex-direction: column;
align-items: flex-start;
gap: 14px
}

.ab .pt-two {
padding: 56px 0
}
}

@media (max-width: 360px) {
.ab .pt-one .txt-side {
padding: 28px 14px
}

.ab .pt-two .inner-wrap {
padding: 0 14px
}

.ab .pt-one .txt-side .h1-main {
font-size: 23px
}
}

.cu-pg {
display: block;
overflow-x: clip
}

.cu-pg *,
.cu-pg ::before,
.cu-pg ::after {
box-sizing: border-box
}

.cu-pg ::selection {
background: #3A938D;
color: #fff
}

.cu-pg .reach {
max-width: 1280px;
margin: 0 auto;
padding: 0 28px
}

.cu-pg .opener {
position: relative;
padding: 96px 28px 56px;
background: #fff;
overflow: hidden
}

.cu-pg .opener-bg {
position: absolute;
inset: 0;
pointer-events: none;
background: radial-gradient(ellipse 60% 80% at 20% 50%, #3a938d12 0%, transparent 60%), radial-gradient(ellipse 40% 60% at 80% 30%, #a9cdc00f 0%, transparent 55%)
}

.cu-pg .opener-bg-circle {
position: absolute;
border-radius: 50%;
pointer-events: none
}

.cu-pg .opener-bg-circle.lg {
width: 420px;
height: 420px;
border: 1px solid #3a938d14;
top: -120px;
right: -80px
}

.cu-pg .opener-bg-circle.md {
width: 220px;
height: 220px;
border: 1px solid #a9cdc01f;
bottom: -60px;
left: 8%
}

.cu-pg .opener-bg-circle.sm {
width: 90px;
height: 90px;
border: 1px solid #3a938d1a;
top: 40px;
right: 22%
}

.cu-pg .opener-inner {
max-width: 1280px;
margin: 0 auto;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 56px;
align-items: center;
position: relative
}

.cu-pg .opener-text {
display: flex;
flex-direction: column;
gap: 28px
}

.cu-pg .opener-label {
display: inline-flex;
align-items: center;
gap: 14px;
font-size: 13px;
letter-spacing: .12em;
text-transform: uppercase;
color: #3A938D
}

.cu-pg .opener-label-line {
display: block;
width: 32px;
height: 1px;
background: #3A938D
}

.cu-pg .opener-h1 {
font-size: 62px;
line-height: 1.1;
letter-spacing: -.03em;
color: #1b2e2d;
margin: 0
}

.cu-pg .opener-h1 em {
font-style: normal;
color: #3A938D;
position: relative;
display: inline-block
}

.cu-pg .opener-h1 em::after {
content: '';
position: absolute;
bottom: 2px;
left: 0;
width: 100%;
height: 2px;
background: #A9CDC0;
transform: scaleX(0);
transform-origin: left;
transition: transform .45s cubic-bezier(0.16, 1, 0.3, 1)
}

.cu-pg .opener:hover .opener-h1 em::after {
transform: scaleX(1)
}

.cu-pg .opener-desc {
font-size: 18px;
line-height: 1.75;
color: #2d4a48;
margin: 0;
max-width: 480px
}

.cu-pg .opener-meta {
display: flex;
flex-direction: column;
gap: 14px
}

.cu-pg .opener-meta-row {
display: flex;
align-items: flex-start;
gap: 14px;
font-size: 15px;
line-height: 1.75;
color: #2d4a48
}

.cu-pg .opener-meta-icon {
flex-shrink: 0;
width: 20px;
height: 20px;
margin-top: 2px
}

.cu-pg .opener-meta-icon svg {
width: 20px;
height: 20px
}

.cu-pg .opener-visual {
position: relative;
display: flex;
flex-direction: column;
align-items: flex-end
}

.cu-pg .opener-img-wrap {
position: relative;
width: 100%;
max-width: 480px;
border-radius: 28px;
overflow: hidden;
box-shadow: -1px 8px 40px -2px #3a938d1f
}

.cu-pg .opener-img-wrap img {
width: 100%;
height: 360px;
object-fit: cover;
display: block
}

.cu-pg .opener-img-vignette {
position: absolute;
inset: 0;
background: radial-gradient(ellipse at 50% 50%, transparent 40%, #1b2e2d59 100%);
pointer-events: none
}

.cu-pg .opener-stat {
position: absolute;
bottom: -14px;
left: -28px;
background: #fff;
border-radius: 3px;
padding: 14px 28px;
box-shadow: -1px 6px 20px -2px #3a938d17;
display: flex;
flex-direction: column;
gap: 6px;
min-width: 160px
}

.cu-pg .opener-stat-num {
font-size: 32px;
line-height: 1.1;
letter-spacing: -.03em;
color: #3A938D
}

.cu-pg .opener-stat-label {
font-size: 13px;
color: #5a7a78;
text-transform: uppercase;
letter-spacing: .08em
}

.cu-pg .opener-stat-bar {
height: 2px;
background: #E5F3EB;
border-radius: 3px;
margin-top: 6px
}

.cu-pg .opener-stat-bar-fill {
height: 2px;
background: #3A938D;
border-radius: 3px;
width: 72%
}

.cu-pg .form-block {
background: #0d2422;
padding: 96px 28px;
position: relative;
overflow: hidden
}

.cu-pg .form-block-deco {
position: absolute;
top: -40px;
right: -40px;
font-size: 320px;
line-height: 1;
color: transparent;
-webkit-text-stroke: 1px #3a938d1f;
pointer-events: none;
user-select: none;
letter-spacing: -.05em
}

.cu-pg .form-block-inner {
max-width: 1280px;
margin: 0 auto;
display: grid;
grid-template-columns: 5fr 7fr;
gap: 96px;
align-items: start;
position: relative
}

.cu-pg .form-aside {
display: flex;
flex-direction: column;
gap: 28px
}

.cu-pg .form-aside-tag {
font-size: 13px;
letter-spacing: .12em;
text-transform: uppercase;
color: #A9CDC0
}

.cu-pg .form-aside-h2 {
font-size: 32px;
line-height: 1.1;
letter-spacing: -.02em;
color: #E5F3EB;
margin: 0
}

.cu-pg .form-aside-p {
font-size: 15px;
line-height: 1.75;
color: #8ab5af;
margin: 0
}

.cu-pg .form-aside-divider {
width: 48px;
height: 1px;
background: #a9cdc040
}

.cu-pg .form-aside-list {
list-style: none;
margin: 0;
padding: 0;
display: flex;
flex-direction: column;
gap: 14px
}

.cu-pg .form-aside-list li {
display: flex;
align-items: center;
gap: 14px;
font-size: 15px;
line-height: 1.75;
color: #8ab5af
}

.cu-pg .form-aside-list li svg {
flex-shrink: 0;
width: 16px;
height: 16px
}

.cu-pg .form-area {
display: flex;
flex-direction: column;
gap: 28px
}

.cu-pg .form-area form {
display: flex;
flex-direction: column;
gap: 28px
}

.cu-pg .f-row {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 14px
}

.cu-pg .f-field {
display: flex;
flex-direction: column;
gap: 6px
}

.cu-pg .f-field.full {
grid-column: 1 / -1
}

.cu-pg .f-label {
font-size: 13px;
letter-spacing: .08em;
text-transform: uppercase;
color: #A9CDC0
}

.cu-pg .f-input,
.cu-pg .f-select {
background: #3a938d14;
border: 1px solid #a9cdc02e;
border-radius: 3px;
padding: 14px;
font-size: 15px;
line-height: 1.75;
color: #E5F3EB;
width: 100%;
outline: none;
transition: border-color .45s cubic-bezier(0.16, 1, 0.3, 1), background .45s cubic-bezier(0.16, 1, 0.3, 1);
box-shadow: inset -1px 3px 3px -2px #3a938d14;
-webkit-appearance: none;
appearance: none
}

.cu-pg .f-input::placeholder {
color: #a9cdc073;
text-overflow: ellipsis;
overflow: hidden;
white-space: nowrap
}

.cu-pg .f-input:focus,
.cu-pg .f-select:focus {
border-color: #3A938D;
background: #3a938d21
}

.cu-pg .f-select {
cursor: pointer;
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='%23A9CDC0' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");
background-repeat: no-repeat;
background-position: right 14px center;
padding-right: 40px
}

.cu-pg .f-select option {
background: #0d2422;
color: #E5F3EB
}

.cu-pg .f-privacy {
display: flex;
align-items: flex-start;
gap: 14px
}

.cu-pg .f-privacy input[type="checkbox"] {
width: 18px;
height: 18px;
flex-shrink: 0;
margin-top: 3px;
accent-color: #3A938D;
cursor: pointer
}

.cu-pg .f-privacy-text {
font-size: 13px;
line-height: 1.75;
color: #8ab5af
}

.cu-pg .f-privacy-text a {
color: #A9CDC0;
text-decoration: underline;
text-underline-offset: 3px;
transition: color .4s ease-in-out
}

.cu-pg .f-privacy-text a:hover {
color: #E5F3EB
}

.cu-pg .f-btn {
display: inline-block;
position: relative;
padding: 14px 56px;
font-size: 13px;
letter-spacing: .12em;
text-transform: uppercase;
color: #fff;
background: #3A938D;
border: 2px solid #3A938D;
border-radius: 3px;
cursor: pointer;
align-self: flex-start;
overflow: hidden;
transition: color .45s cubic-bezier(0.16, 1, 0.3, 1), background .45s cubic-bezier(0.16, 1, 0.3, 1)
}

.cu-pg .f-btn::before,
.cu-pg .f-btn::after {
content: '';
position: absolute;
pointer-events: none
}

.cu-pg .f-btn::before {
top: 0;
left: 0;
right: 0;
height: 2px;
background: #E5F3EB;
transform: scaleX(0);
transform-origin: left;
transition: transform .4s cubic-bezier(0.16, 1, 0.3, 1)
}

.cu-pg .f-btn::after {
bottom: 0;
left: 0;
right: 0;
height: 2px;
background: #E5F3EB;
transform: scaleX(0);
transform-origin: right;
transition: transform .4s cubic-bezier(0.16, 1, 0.3, 1) .08s
}

.cu-pg .f-btn:hover {
background: #2d7a75;
color: #E5F3EB
}

.cu-pg .f-btn:hover::before,
.cu-pg .f-btn:hover::after {
transform: scaleX(1)
}

.cu-pg .f-btn:focus-visible {
outline: 2px solid #A9CDC0;
outline-offset: 3px
}

.cu-pg .info-strip {
background: #E5F3EB;
padding: 56px 28px;
position: relative
}

.cu-pg .info-strip-inner {
max-width: 1280px;
margin: 0 auto;
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 28px;
align-items: stretch
}

.cu-pg .info-card {
background: #fff;
border-radius: 28px;
padding: 28px;
display: flex;
flex-direction: column;
gap: 14px;
box-shadow: -1px 3px 3px -2px #3a938d14;
position: relative;
overflow: hidden;
transition: box-shadow .5s cubic-bezier(0.16, 1, 0.3, 1)
}

.cu-pg .info-card:hover {
box-shadow: -1px 6px 20px -2px #3a938d17
}

.cu-pg .info-card-label {
display: flex;
align-items: center;
gap: 14px
}

.cu-pg .info-card-icon {
width: 36px;
height: 36px;
background: #E5F3EB;
border-radius: 3px;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0
}

.cu-pg .info-card-icon svg {
width: 18px;
height: 18px
}

.cu-pg .info-card-tag {
font-size: 13px;
letter-spacing: .1em;
text-transform: uppercase;
color: #3A938D
}

.cu-pg .info-card-val {
font-size: 18px;
line-height: 1.75;
color: #1b2e2d
}

.cu-pg .info-card-val a {
color: #1b2e2d;
text-decoration: none;
transition: color .4s ease-in-out
}

.cu-pg .info-card-val a:hover {
color: #3A938D
}

.cu-pg .info-card-sub {
font-size: 13px;
line-height: 1.75;
color: #5a7a78
}

.cu-pg .info-card-slide-label {
position: absolute;
bottom: 0;
left: -100%;
background: #3A938D;
color: #fff;
font-size: 13px;
letter-spacing: .08em;
text-transform: uppercase;
padding: 6px 14px;
border-radius: 0 3px 0 0;
transition: left .5s cubic-bezier(0.16, 1, 0.3, 1);
pointer-events: none
}

.cu-pg .info-card:hover .info-card-slide-label {
left: 0
}

.cu-pg .info-strip-divider {
grid-column: 1 / -1;
height: 1px;
background: #3a938d1f;
margin: 6px 0
}

@media (max-width: 1024px) {
.cu-pg .opener-inner {
grid-template-columns: 1fr;
gap: 56px
}

.cu-pg .opener-visual {
align-items: flex-start
}

.cu-pg .opener-stat {
left: 0
}

.cu-pg .opener-img-wrap {
max-width: 100%
}

.cu-pg .form-block-inner {
grid-template-columns: 1fr;
gap: 56px
}

.cu-pg .info-strip-inner {
grid-template-columns: 1fr 1fr
}
}

@media (max-width: 768px) {
.cu-pg .opener {
padding: 56px 28px
}

.cu-pg .opener-h1 {
font-size: 32px
}

.cu-pg .f-row {
grid-template-columns: 1fr
}

.cu-pg .info-strip-inner {
grid-template-columns: 1fr
}

.cu-pg .form-block-deco {
font-size: 180px
}

.cu-pg .opener-stat {
position: static;
margin-top: 14px
}
}

@media (max-width: 360px) {
.cu-pg .opener-h1 {
font-size: 23px
}

.cu-pg .f-btn {
padding: 14px 28px
}
}

.lp {
display: block;
width: 100%;
overflow-x: clip;
background: #fff
}

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

.lp a {
text-decoration: none
}

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

.lp .tb {
background: #1a2e2c;
position: relative;
padding: 96px 0 56px;
container-type: inline-size
}

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

.lp .tb-shapes::before {
content: "";
position: absolute;
top: -40px;
right: -60px;
width: 420px;
height: 420px;
border: 2px solid #a9cdc014;
border-radius: 28px;
transform: rotate(22deg)
}

.lp .tb-shapes::after {
content: "";
position: absolute;
bottom: 20px;
right: 80px;
width: 220px;
height: 220px;
border: 1px solid #3a938d1f;
border-radius: 28px;
transform: rotate(10deg)
}

.lp .tb-shape-c {
position: absolute;
top: 60px;
right: 200px;
width: 140px;
height: 140px;
border: 1px solid #a9cdc00f;
border-radius: 28px;
transform: rotate(-15deg)
}

.lp .tb-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 56px;
align-items: center
}

.lp .tb-text {
position: relative;
z-index: 1
}

.lp .tb-tag {
display: inline-block;
font-size: 13px;
letter-spacing: .12em;
color: #A9CDC0;
text-transform: uppercase;
margin-bottom: 28px;
padding: 6px 14px;
border: 1px solid #a9cdc04d;
border-radius: 3px
}

.lp .tb-h1 {
font-size: 62px;
line-height: 1.1;
color: #fff;
letter-spacing: -.03em;
margin: 0 0 28px
}

.lp .tb-h1 span {
color: #3A938D
}

.lp .tb-desc {
font-size: 18px;
line-height: 1.75;
color: #ffffffb3;
margin: 0 0 56px;
max-width: 480px
}

.lp .tb-actions {
display: flex;
flex-direction: row;
gap: 14px;
flex-wrap: wrap
}

.lp .btn-pri {
display: inline-block;
font-size: 13px;
letter-spacing: .1em;
text-transform: uppercase;
color: #fff;
background: #3A938D;
padding: 14px 28px;
border-radius: 3px;
border: 2px solid #3A938D;
position: relative;
overflow: hidden;
transition: color .45s cubic-bezier(0.16, 1, 0.3, 1), background .45s cubic-bezier(0.16, 1, 0.3, 1)
}

.lp .btn-pri::before {
content: "";
position: absolute;
inset: 0;
border: 2px solid #A9CDC0;
border-radius: 3px;
transform: scaleX(0);
transform-origin: left;
transition: transform .5s cubic-bezier(0.16, 1, 0.3, 1)
}

.lp .btn-pri:hover::before {
transform: scaleX(1)
}

.lp .btn-pri:hover {
background: #2e7671
}

.lp .btn-sec {
display: inline-block;
font-size: 13px;
letter-spacing: .1em;
text-transform: uppercase;
color: #A9CDC0;
background: transparent;
padding: 14px 28px;
border-radius: 3px;
border: 2px solid #a9cdc059;
position: relative;
overflow: hidden;
transition: color .5s cubic-bezier(0.16, 1, 0.3, 1), border-color .5s cubic-bezier(0.16, 1, 0.3, 1)
}

.lp .btn-sec::before {
content: "";
position: absolute;
inset: 0;
border: 2px solid #3A938D;
border-radius: 3px;
transform: scaleX(0);
transform-origin: right;
transition: transform .48s cubic-bezier(0.16, 1, 0.3, 1)
}

.lp .btn-sec:hover::before {
transform: scaleX(1)
}

.lp .btn-sec:hover {
color: #fff;
border-color: transparent
}

.lp .tb-img-wrap {
position: relative;
z-index: 1;
border-radius: 3px;
overflow: hidden;
box-shadow: -1px 8px 40px -2px #3a938d1f
}

.lp .tb-img-wrap img {
width: 100%;
height: 480px;
object-fit: cover;
object-position: center;
display: block
}

.lp .tb-img-wrap::after {
content: "";
position: absolute;
inset: 0;
background: linear-gradient(135deg, #1a2e2cb8 50%, transparent 50%)
}

.lp .met {
background: #E5F3EB;
padding: 56px 0;
position: relative;
border-top: 4px solid #3A938D
}

.lp .met-row {
display: grid;
grid-template-columns: 2fr 1fr 1fr;
gap: 0
}

.lp .met-lead {
padding-right: 56px;
border-right: 1px solid #3a938d33
}

.lp .met-lead-h {
font-size: 32px;
line-height: 1.1;
letter-spacing: -.02em;
color: #1a2e2c;
margin: 0 0 14px;
position: relative;
display: inline-block
}

.lp .met-lead-h::after {
content: "";
position: absolute;
bottom: -4px;
left: 0;
width: 100%;
height: 2px;
background: #3A938D;
transform: scaleX(0);
transform-origin: left;
transition: transform .55s cubic-bezier(0.16, 1, 0.3, 1)
}

.lp .met-lead:hover .met-lead-h::after {
transform: scaleX(1)
}

.lp .met-lead-p {
font-size: 15px;
line-height: 1.75;
color: #2c4a46;
margin: 0
}

.lp .met-stat {
padding: 0 28px;
border-right: 1px solid #3a938d33;
display: flex;
flex-direction: column;
justify-content: center
}

.lp .met-stat.last {
border-right: none;
padding-right: 0
}

.lp .met-num {
font-size: 62px;
line-height: 1.1;
letter-spacing: -.04em;
color: #3A938D;
display: block;
animation: bounce-in .55s cubic-bezier(0.16, 1, 0.3, 1) both
}

.lp .met-stat:nth-child(2) .met-num {
animation-delay: .1s
}

.lp .met-stat:nth-child(3) .met-num {
animation-delay: .22s
}

@keyframes bounce-in {
0% {
transform: translateY(-28px);
opacity: 0
}

60% {
transform: translateY(6px)
}

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

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

.lp .met-label {
font-size: 13px;
letter-spacing: .08em;
text-transform: uppercase;
color: #2c4a46;
margin-top: 6px;
display: block
}

.lp .met-narr {
font-size: 13px;
line-height: 1.75;
color: #3a5550;
margin-top: 6px
}

.lp .cur {
padding: 96px 0 56px;
background: #fff;
position: relative
}

.lp .cur::before {
content: "";
position: absolute;
top: 0;
right: 0;
width: 6px;
height: 100%;
background: #E5F3EB
}

.lp .cur-hd {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 56px;
margin-bottom: 56px;
align-items: end
}

.lp .cur-h2 {
font-size: 32px;
line-height: 1.1;
letter-spacing: -.02em;
color: #1a2e2c;
margin: 0;
position: relative;
display: inline-block
}

.lp .cur-h2::after {
content: "";
position: absolute;
bottom: -6px;
left: 0;
width: 56px;
height: 2px;
background: #3A938D;
transition: width .5s cubic-bezier(0.16, 1, 0.3, 1)
}

.lp .cur:hover .cur-h2::after {
width: 100%
}

.lp .cur-sub {
font-size: 15px;
line-height: 1.75;
color: #3a5550;
margin: 0
}

.lp .cur-modules {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 28px
}

.lp .mod {
border: 1px solid #3a938d26;
border-radius: 3px;
padding: 28px;
position: relative;
box-shadow: inset -1px 3px 3px -2px #3a938d14;
transition: box-shadow .45s cubic-bezier(0.16, 1, 0.3, 1), border-color .45s cubic-bezier(0.16, 1, 0.3, 1)
}

.lp .mod:hover {
box-shadow: inset -1px 3px 3px -2px #3a938d14 -1px 6px 20px -2px #3a938d17;
border-color: #3a938d66
}

.lp .mod-num {
font-size: 62px;
line-height: 1.1;
letter-spacing: -.05em;
color: #3a938d1f;
display: block;
margin-bottom: 14px
}

.lp .mod-h {
font-size: 18px;
line-height: 1.1;
color: #1a2e2c;
margin: 0 0 14px;
letter-spacing: -.01em
}

.lp .mod-p {
font-size: 15px;
line-height: 1.75;
color: #3a5550;
margin: 0 0 14px
}

.lp .mod-items {
list-style: none;
margin: 0;
padding: 0;
display: flex;
flex-direction: column;
gap: 6px
}

.lp .mod-items li {
font-size: 13px;
line-height: 1.75;
color: #2c4a46;
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 6px
}

.lp .mod-dot {
display: inline-block;
width: 6px;
height: 6px;
background: #3A938D;
border-radius: 50%;
margin-top: 7px;
flex-shrink: 0
}

.lp .inst {
background: #1a2e2c;
padding: 96px 0;
position: relative
}

.lp .inst::before {
content: "";
position: absolute;
top: 0;
left: 0;
width: 6px;
height: 100%;
background: #3A938D
}

.lp .inst-hd {
margin-bottom: 56px
}

.lp .inst-h2 {
font-size: 32px;
line-height: 1.1;
letter-spacing: -.02em;
color: #fff;
margin: 0 0 14px
}

.lp .inst-sub {
font-size: 15px;
line-height: 1.75;
color: #fff9;
margin: 0;
max-width: 560px
}

.lp .inst-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 28px
}

.lp .inst-card {
display: grid;
grid-template-columns: 160px 1fr;
gap: 28px;
background: #ffffff0a;
border: 1px solid #a9cdc01f;
border-radius: 3px;
padding: 28px;
box-shadow: -1px 6px 20px -2px #3a938d17;
transition: background .5s cubic-bezier(0.16, 1, 0.3, 1), border-color .5s cubic-bezier(0.16, 1, 0.3, 1)
}

.lp .inst-card:hover {
background: #ffffff12;
border-color: #a9cdc047
}

.lp .inst-portrait {
width: 160px;
height: 205px;
border-radius: 3px;
overflow: hidden;
flex-shrink: 0;
box-shadow: -1px 3px 3px -2px #3a938d14
}

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

.lp .inst-info {
display: flex;
flex-direction: column;
justify-content: center
}

.lp .inst-name {
font-size: 23px;
line-height: 1.1;
letter-spacing: -.02em;
color: #fff;
margin: 0 0 6px
}

.lp .inst-role {
font-size: 13px;
letter-spacing: .08em;
text-transform: uppercase;
color: #3A938D;
margin: 0 0 14px;
display: block
}

.lp .inst-bio {
font-size: 15px;
line-height: 1.75;
color: #ffffffa6;
margin: 0 0 14px
}

.lp .inst-tags {
display: flex;
flex-direction: row;
flex-wrap: wrap;
gap: 6px
}

.lp .inst-tag {
font-size: 13px;
color: #A9CDC0;
border: 1px solid #a9cdc040;
border-radius: 3px;
padding: 3px 8px
}

.lp .off {
background: #E5F3EB;
padding: 96px 0;
position: relative
}

.lp .off-inner {
display: grid;
grid-template-columns: 2fr 1fr 1fr;
gap: 28px;
align-items: start
}

.lp .off-main {
padding-right: 28px
}

.lp .off-h2 {
font-size: 32px;
line-height: 1.1;
letter-spacing: -.02em;
color: #1a2e2c;
margin: 0 0 14px
}

.lp .off-p {
font-size: 15px;
line-height: 1.75;
color: #2c4a46;
margin: 0 0 28px
}

.lp .off-img-wrap {
border-radius: 3px;
overflow: hidden;
box-shadow: -1px 6px 20px -2px #3a938d17
}

.lp .off-img-wrap img {
width: 100%;
height: 240px;
object-fit: cover;
object-position: center;
display: block;
transition: transform .55s cubic-bezier(0.16, 1, 0.3, 1)
}

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

.lp .off-card {
background: #fff;
border-radius: 3px;
padding: 28px;
box-shadow: inset -1px 3px 3px -2px #3a938d14 -1px 6px 20px -2px #3a938d17;
display: flex;
flex-direction: column;
gap: 14px
}

.lp .off-card-h {
font-size: 18px;
line-height: 1.1;
color: #1a2e2c;
margin: 0;
letter-spacing: -.01em
}

.lp .off-list {
list-style: none;
margin: 0;
padding: 0;
display: flex;
flex-direction: column;
gap: 6px
}

.lp .off-list li {
font-size: 15px;
line-height: 1.75;
color: #2c4a46;
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 6px
}

.lp .off-ico {
display: inline-block;
width: 16px;
height: 16px;
flex-shrink: 0;
margin-top: 4px
}

.lp .off-ico svg {
width: 16px;
height: 16px
}

.lp .off-price-box {
background: #3A938D;
border-radius: 3px;
padding: 28px;
display: flex;
flex-direction: column;
gap: 14px;
box-shadow: -1px 8px 40px -2px #3a938d1f
}

.lp .off-price-label {
font-size: 13px;
letter-spacing: .1em;
text-transform: uppercase;
color: #ffffffbf
}

.lp .off-price-val {
font-size: 32px;
line-height: 1.1;
letter-spacing: -.03em;
color: #fff
}

.lp .off-price-note {
font-size: 13px;
line-height: 1.75;
color: #ffffffb3
}

.lp .btn-enrol {
display: inline-block;
font-size: 13px;
letter-spacing: .1em;
text-transform: uppercase;
color: #1a2e2c;
background: #fff;
padding: 14px 28px;
border-radius: 3px;
border: 2px solid #fff;
text-align: center;
position: relative;
overflow: hidden;
transition: color .45s cubic-bezier(0.16, 1, 0.3, 1), background .45s cubic-bezier(0.16, 1, 0.3, 1)
}

.lp .btn-enrol::before {
content: "";
position: absolute;
inset: 0;
border: 2px solid #ffffff80;
border-radius: 3px;
transform: scaleX(0);
transform-origin: left;
transition: transform .5s cubic-bezier(0.16, 1, 0.3, 1)
}

.lp .btn-enrol:hover::before {
transform: scaleX(1)
}

.lp .btn-enrol:hover {
background: #E5F3EB
}

.lp .geo-motif {
position: absolute;
bottom: 0;
right: 0;
width: 180px;
height: 180px;
pointer-events: none;
overflow: hidden
}

.lp .geo-motif svg {
width: 100%;
height: 100%;
opacity: .07
}

@media (max-width: 1024px) {
.lp .tb-h1 {
font-size: 32px
}

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

.lp .tb-img-wrap img {
height: 320px
}

.lp .met-row {
grid-template-columns: 1fr;
gap: 28px
}

.lp .met-lead {
padding-right: 0;
border-right: none;
border-bottom: 1px solid #3a938d33;
padding-bottom: 28px
}

.lp .met-stat {
border-right: none;
border-bottom: 1px solid #3a938d33;
padding: 28px 0
}

.lp .met-stat.last {
border-bottom: none
}

.lp .cur-hd {
grid-template-columns: 1fr;
gap: 14px
}

.lp .cur-modules {
grid-template-columns: 1fr 1fr
}

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

.lp .off-inner {
grid-template-columns: 1fr 1fr
}

.lp .off-main {
grid-column: 1 / -1;
padding-right: 0
}
}

@media (max-width: 768px) {
.lp .tb {
padding: 56px 0 28px
}

.lp .tb-h1 {
font-size: 32px
}

.lp .cur-modules {
grid-template-columns: 1fr
}

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

.lp .inst-portrait {
width: 100%;
height: 220px
}

.lp .off-inner {
grid-template-columns: 1fr
}

.lp .off-main {
grid-column: auto
}
}

@media (max-width: 360px) {
.lp .pg-wrap {
padding: 0 14px
}

.lp .tb-h1 {
font-size: 23px
}

.lp .met-num {
font-size: 32px
}

.lp .tb-actions {
flex-direction: column
}
}

.lnch {
width: 100%;
overflow-x: hidden;
background: #fff;
color: #1b2a28
}

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

.lnch ::selection {
background: #3A938D;
color: #fff
}

.lnch a {
color: inherit;
text-decoration: none
}

.lnch img {
display: block;
max-width: 100%
}

.lnch .pg-wide {
max-width: 1280px;
margin-left: auto;
margin-right: auto;
padding-left: 28px;
padding-right: 28px
}

.lnch .div-dash {
border: none;
border-top: 2px dashed #3A938D;
opacity: .35;
margin: 0
}

.lnch .div-dot {
height: 2px;
background: linear-gradient(90deg, #A9CDC0 50%, transparent 50%);
background-size: 12px 2px;
opacity: .5
}

.lnch .div-solid {
height: 1px;
background: #E5F3EB
}

.lnch .btn-pri {
display: inline-block;
padding: 14px 28px;
background: #3A938D;
color: #fff;
font-size: 13px;
letter-spacing: .12em;
text-transform: uppercase;
border: 2px solid #3A938D;
border-radius: 3px;
cursor: pointer;
position: relative;
overflow: hidden;
transition: color .45s cubic-bezier(0.16, 1, 0.3, 1), background .45s cubic-bezier(0.16, 1, 0.3, 1)
}

.lnch .btn-pri::before {
content: '';
position: absolute;
inset: 0;
border: 2px solid #fff;
border-radius: 3px;
transform: scaleX(0);
transform-origin: center;
transition: transform .45s cubic-bezier(0.16, 1, 0.3, 1)
}

.lnch .btn-pri:hover::before {
transform: scaleX(1)
}

.lnch .btn-pri:hover {
background: #2d7470
}

.lnch .btn-pri:focus {
outline: 3px solid #3A938D;
outline-offset: 3px
}

.lnch .btn-sec {
display: inline-block;
padding: 14px 28px;
background: transparent;
color: #3A938D;
font-size: 13px;
letter-spacing: .12em;
text-transform: uppercase;
border: 2px solid #3A938D;
border-radius: 3px;
cursor: pointer;
position: relative;
overflow: hidden;
transition: color .5s cubic-bezier(0.16, 1, 0.3, 1), background .5s cubic-bezier(0.16, 1, 0.3, 1)
}

.lnch .btn-sec::before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 0;
height: 100%;
background: #3A938D;
transition: width .5s cubic-bezier(0.16, 1, 0.3, 1);
z-index: 0
}

.lnch .btn-sec:hover::before {
width: 100%
}

.lnch .btn-sec:hover {
color: #fff
}

.lnch .btn-sec span {
position: relative;
z-index: 1
}

.lnch .btn-sec:focus {
outline: 3px solid #3A938D;
outline-offset: 3px
}

.lnch .anim-child>* {
opacity: 0;
transform: translateY(18px);
animation: lnch-rise .55s cubic-bezier(0.16, 1, 0.3, 1) forwards
}

.lnch .anim-child> :nth-child(1) {
animation-delay: .08s
}

.lnch .anim-child> :nth-child(2) {
animation-delay: .18s
}

.lnch .anim-child> :nth-child(3) {
animation-delay: .28s
}

.lnch .anim-child> :nth-child(4) {
animation-delay: .38s
}

.lnch .anim-child> :nth-child(5) {
animation-delay: .48s
}

@keyframes lnch-rise {
to {
opacity: 1;
transform: translateY(0)
}
}

.lnch .ul-pairs {
list-style: none;
padding: 0;
margin: 0
}

.lnch .ul-pairs li {
display: flex;
align-items: flex-start;
gap: 14px;
padding: 6px 0;
font-size: 15px;
line-height: 1.75;
color: #1b2a28
}

.lnch .ul-pairs li .ico {
flex-shrink: 0;
width: 20px;
height: 20px;
margin-top: 2px
}

.lnch .tag-pill {
display: inline-block;
padding: 6px 14px;
background: #E5F3EB;
color: #3A938D;
font-size: 13px;
letter-spacing: .08em;
text-transform: uppercase;
border-radius: 3px
}

.lnch .u-accent {
display: inline-block;
position: relative
}

.lnch .u-accent::after {
content: '';
position: absolute;
bottom: -2px;
left: 50%;
right: 50%;
height: 2px;
background: #3A938D;
transition: left .45s cubic-bezier(0.16, 1, 0.3, 1), right .45s cubic-bezier(0.16, 1, 0.3, 1)
}

.lnch .u-accent:hover::after {
left: 0;
right: 0
}

.lnch .dots-deco {
position: absolute;
pointer-events: none
}

.lnch .dots-deco span {
display: block;
border-radius: 50%;
background: #A9CDC0;
position: absolute
}

.lnch .strike-swap {
display: inline-flex;
align-items: center;
gap: 14px
}

.lnch .strike-swap .old {
text-decoration: line-through;
color: #8aaba7
}

.lnch .strike-swap .new {
color: #3A938D;
font-size: 23px
}

.lnch .pull-quote {
font-size: 23px;
line-height: 1.75;
color: #3A938D;
border-top: 2px dashed #3A938D;
padding-top: 14px;
margin-top: 28px
}

.lnch .inset-card {
border-radius: 28px;
box-shadow: inset -1px 3px 3px -2px #3a938d14 inset -1px 6px 20px -2px #3a938d17;
background: #fff
}

.lnch .shadow-lo {
box-shadow: -1px 3px 3px -2px #3a938d14
}

.lnch .shadow-mid {
box-shadow: -1px 6px 20px -2px #3a938d17
}

.lnch .shadow-hi {
box-shadow: -1px 8px 40px -2px #3a938d1f
}

.lnch .img-hover-wrap {
position: relative;
overflow: hidden
}

.lnch .img-hover-wrap img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
transition: transform .55s cubic-bezier(0.16, 1, 0.3, 1)
}

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

.lnch .img-hover-wrap .img-reveal {
position: absolute;
inset: 0;
background: #1b2a28b8;
display: flex;
align-items: center;
justify-content: center;
padding: 28px;
opacity: 0;
transition: opacity .45s ease-in-out
}

.lnch .img-hover-wrap:hover .img-reveal {
opacity: 1
}

.lnch .img-reveal p {
color: #fff;
font-size: 15px;
line-height: 1.75;
text-align: center;
margin: 0
}

.lnch .num-bg {
position: absolute;
font-size: 62px;
line-height: 1.1;
font-weight: 900;
color: #E5F3EB;
pointer-events: none;
user-select: none;
letter-spacing: -.04em
}

.lnch .underline-load {
position: relative;
display: inline-block
}

.lnch .underline-load::after {
content: '';
position: absolute;
bottom: -4px;
left: 0;
width: 0;
height: 3px;
background: #3A938D;
animation: lnch-uline .55s .6s cubic-bezier(0.16, 1, 0.3, 1) forwards
}

@keyframes lnch-uline {
to {
width: 100%
}
}

.lnch .h-anim {
position: relative;
display: inline-block
}

.lnch .h-anim::after {
content: '';
position: absolute;
bottom: -3px;
left: 0;
right: 100%;
height: 2px;
background: #3A938D;
transition: right .45s cubic-bezier(0.16, 1, 0.3, 1)
}

.lnch .h-anim:hover::after {
right: 0
}

.lnch .split-bg {
background: linear-gradient(180deg, #E5F3EB 50%, #fff 50%)
}

.lnch .split-bg-rev {
background: linear-gradient(180deg, #fff 50%, #E5F3EB 50%)
}

.lnch .alt-row:nth-child(even) {
flex-direction: row-reverse
}

.lnch .progress-bar {
height: 6px;
border-radius: 3px;
background: #E5F3EB;
overflow: hidden;
margin-top: 6px
}

.lnch .progress-fill {
height: 100%;
background: #3A938D;
border-radius: 3px;
transform-origin: left;
animation: lnch-bar .55s .4s cubic-bezier(0.16, 1, 0.3, 1) both
}

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

to {
transform: scaleX(1)
}
}

@media (max-width: 768px) {
.lnch .pg-wide {
padding-left: 14px;
padding-right: 14px
}
}

.lnch s1 {
display: block
}

.lnch .t-blk {
padding: 56px 0;
position: relative
}

.lnch .t-blk-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 28px;
align-items: center
}

.lnch .t-mosaic {
display: grid;
grid-template-columns: 1fr 1fr;
grid-template-rows: 200px 160px;
gap: 14px;
position: relative
}

.lnch .t-mosaic .m-img {
border-radius: 3px;
overflow: hidden
}

.lnch .t-mosaic .m-img img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
opacity: .72;
transition: opacity .45s ease-in-out
}

.lnch .t-mosaic .m-img:hover img {
opacity: .9
}

.lnch .t-mosaic .m-img.tall {
grid-row: 1 / 3
}

.lnch .t-txt {
padding-right: 28px
}

.lnch .t-txt .eyebrow {
font-size: 13px;
letter-spacing: .12em;
text-transform: uppercase;
color: #3A938D;
margin-bottom: 14px;
display: block
}

.lnch .t-txt h1 {
font-size: 62px;
line-height: 1.1;
letter-spacing: -.03em;
color: #1b2a28;
margin: 0 0 28px
}

.lnch .t-txt .sub-pts {
list-style: none;
padding: 0;
margin: 0 0 28px
}

.lnch .t-txt .sub-pts li {
font-size: 15px;
line-height: 1.75;
color: #3a4f4d;
padding: 6px 0;
display: flex;
align-items: flex-start;
gap: 14px
}

.lnch .t-txt .sub-pts li .pt-num {
flex-shrink: 0;
width: 24px;
height: 24px;
background: #3A938D;
color: #fff;
font-size: 13px;
border-radius: 3px;
display: flex;
align-items: center;
justify-content: center;
margin-top: 2px
}

.lnch .t-bg-num {
position: absolute;
right: -14px;
bottom: 0;
font-size: 62px;
line-height: 1.1;
font-weight: 900;
color: #E5F3EB;
pointer-events: none;
user-select: none;
font-size: clamp(80px, 14vw, 200px);
letter-spacing: -.05em;
z-index: 0
}

.lnch .t-blk-grid {
position: relative;
z-index: 1
}

@media (max-width: 1024px) {
.lnch .t-txt h1 {
font-size: 32px
}

.lnch .t-blk-grid {
grid-template-columns: 1fr
}

.lnch .t-txt {
padding-right: 0;
order: -1
}
}

@media (max-width: 768px) {
.lnch .t-mosaic {
grid-template-rows: 160px 120px
}

.lnch .t-txt h1 {
font-size: 32px
}
}

@media (max-width: 360px) {
.lnch .t-txt h1 {
font-size: 23px
}

.lnch .t-mosaic {
grid-template-columns: 1fr;
grid-template-rows: 160px 120px
}

.lnch .t-mosaic .m-img.tall {
grid-row: auto
}
}

.lnch .inv-blk {
padding: 56px 0;
background: #1b2a28;
position: relative;
overflow: hidden
}

.lnch .inv-blk .inv-dots {
position: absolute;
bottom: -28px;
right: 56px;
pointer-events: none
}

.lnch .inv-blk .inv-dots span {
display: block;
border-radius: 50%;
background: #A9CDC0;
position: absolute
}

.lnch .inv-grid {
display: grid;
grid-template-columns: 1fr 1fr 1fr;
gap: 28px;
align-items: start
}

.lnch .inv-head {
grid-column: 1 / -1;
margin-bottom: 14px
}

.lnch .inv-head h2 {
font-size: 32px;
line-height: 1.1;
letter-spacing: -.02em;
color: #fff;
margin: 0 0 14px
}

.lnch .inv-head p {
font-size: 15px;
line-height: 1.75;
color: #A9CDC0;
max-width: 560px;
margin: 0
}

.lnch .inv-card {
border-radius: 28px;
padding: 28px;
background: #ffffff0d;
border: 1px solid #a9cdc02e;
position: relative;
transition: background .45s cubic-bezier(0.16, 1, 0.3, 1), border-color .45s cubic-bezier(0.16, 1, 0.3, 1)
}

.lnch .inv-card:hover {
background: #a9cdc01a;
border-color: #a9cdc066
}

.lnch .inv-card h4 {
font-size: 15px;
line-height: 1.1;
letter-spacing: .06em;
text-transform: uppercase;
color: #A9CDC0;
margin: 0 0 14px
}

.lnch .inv-card .inv-val {
font-size: 32px;
line-height: 1.1;
color: #fff;
letter-spacing: -.02em;
margin: 0 0 14px
}

.lnch .inv-card p {
font-size: 13px;
line-height: 1.75;
color: #A9CDC0;
margin: 0
}

.lnch .inv-card .inv-bar {
height: 3px;
background: #a9cdc033;
border-radius: 3px;
margin-bottom: 28px;
overflow: hidden
}

.lnch .inv-card .inv-bar-fill {
height: 100%;
background: #3A938D;
border-radius: 3px;
animation: lnch-bar .55s .5s cubic-bezier(0.16, 1, 0.3, 1) both
}

.lnch .inv-note {
grid-column: 1 / -1;
margin-top: 14px;
padding: 28px;
background: #3a938d26;
border-radius: 28px;
display: flex;
align-items: flex-start;
gap: 28px
}

.lnch .inv-note .note-ico {
flex-shrink: 0;
width: 40px;
height: 40px
}

.lnch .inv-note p {
font-size: 15px;
line-height: 1.75;
color: #fff;
margin: 0
}

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

.lnch .inv-head {
grid-column: 1 / -1
}

.lnch .inv-note {
grid-column: 1 / -1
}
}

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

.lnch .ppl-blk {
padding: 96px 0 56px;
background: #E5F3EB;
position: relative
}

.lnch .ppl-blk .ppl-deco {
position: absolute;
top: 28px;
left: 28px;
pointer-events: none
}

.lnch .ppl-blk .ppl-deco span {
display: block;
border-radius: 50%;
background: #A9CDC0;
position: absolute
}

.lnch .ppl-top {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 56px;
align-items: start;
margin-bottom: 56px
}

.lnch .ppl-top h2 {
font-size: 32px;
line-height: 1.1;
letter-spacing: -.02em;
color: #1b2a28;
margin: 0 0 14px
}

.lnch .ppl-top p {
font-size: 15px;
line-height: 1.75;
color: #3a4f4d;
margin: 0
}

.lnch .ppl-top .pull-quote {
font-size: 18px;
line-height: 1.75;
color: #3A938D;
border-top: 2px dashed #3A938D;
padding-top: 14px;
margin-top: 28px
}

.lnch .ppl-cards {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 28px
}

.lnch .ppl-card {
display: flex;
flex-direction: row;
gap: 28px;
background: #fff;
border-radius: 28px;
padding: 28px;
box-shadow: -1px 6px 20px -2px #3a938d17;
align-items: flex-start
}

.lnch .ppl-card .port-wrap {
flex-shrink: 0;
width: 100px;
height: 140px;
overflow: hidden
}

.lnch .ppl-card .port-wrap img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center
}

.lnch .ppl-card .port-txt h5 {
font-size: 18px;
line-height: 1.1;
color: #1b2a28;
margin: 0 0 6px;
letter-spacing: -.01em
}

.lnch .ppl-card .port-txt .role {
font-size: 13px;
letter-spacing: .08em;
text-transform: uppercase;
color: #3A938D;
display: block;
margin-bottom: 14px
}

.lnch .ppl-card .port-txt p {
font-size: 13px;
line-height: 1.75;
color: #3a4f4d;
margin: 0
}

.lnch .ppl-xtra {
margin-top: 28px;
grid-column: 1 / -1;
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 14px
}

.lnch .ppl-stat {
background: #fff;
border-radius: 3px;
padding: 28px;
box-shadow: -1px 3px 3px -2px #3a938d14
}

.lnch .ppl-stat .stat-n {
font-size: 32px;
line-height: 1.1;
color: #3A938D;
letter-spacing: -.02em;
margin-bottom: 6px;
display: block
}

.lnch .ppl-stat p {
font-size: 13px;
line-height: 1.75;
color: #3a4f4d;
margin: 0
}

@media (max-width: 1024px) {
.lnch .ppl-top {
grid-template-columns: 1fr;
gap: 28px
}

.lnch .ppl-cards {
grid-template-columns: 1fr
}

.lnch .ppl-xtra {
grid-template-columns: 1fr 1fr
}
}

@media (max-width: 768px) {
.lnch .ppl-card {
flex-direction: column
}

.lnch .ppl-xtra {
grid-template-columns: 1fr
}
}

.lnch .hes-blk {
padding: 96px 0;
background: #fff;
position: relative
}

.lnch .hes-grid {
display: grid;
grid-template-columns: 480px 1fr;
gap: 56px;
align-items: start
}

.lnch .hes-img-col {
position: relative
}

.lnch .hes-img-col .hes-img {
width: 100%;
height: 520px;
border-radius: 28px;
overflow: hidden;
box-shadow: -1px 8px 40px -2px #3a938d1f
}

.lnch .hes-img-col .hes-img img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
transition: transform .55s cubic-bezier(0.16, 1, 0.3, 1)
}

.lnch .hes-img-col .hes-img:hover img {
transform: scale(1.03)
}

.lnch .hes-img-col .hes-img .img-reveal {
position: absolute;
inset: 0;
background: #1b2a28b8;
display: flex;
align-items: center;
justify-content: center;
padding: 28px;
opacity: 0;
transition: opacity .45s ease-in-out;
border-radius: 28px
}

.lnch .hes-img-col .hes-img:hover .img-reveal {
opacity: 1
}

.lnch .hes-img-col .hes-img .img-reveal p {
color: #fff;
font-size: 15px;
line-height: 1.75;
text-align: center;
margin: 0
}

.lnch .hes-txt h2 {
font-size: 32px;
line-height: 1.1;
letter-spacing: -.02em;
color: #1b2a28;
margin: 0 0 28px
}

.lnch .hes-txt .eyebrow {
font-size: 13px;
letter-spacing: .12em;
text-transform: uppercase;
color: #3A938D;
margin-bottom: 14px;
display: block
}

.lnch .hes-items {
display: flex;
flex-direction: column;
gap: 28px;
margin-top: 28px
}

.lnch .hes-item {
display: flex;
flex-direction: row;
gap: 14px;
align-items: flex-start;
padding: 28px;
border-radius: 28px;
border: !important none;
background: #E5F3EB;
transition: background .45s cubic-bezier(0.16, 1, 0.3, 1)
}

.lnch .hes-item:hover {
background: #d4eae0
}

.lnch .hes-item .item-ico {
flex-shrink: 0;
width: 36px;
height: 36px;
background: #3A938D;
border-radius: 3px;
display: flex;
align-items: center;
justify-content: center
}

.lnch .hes-item h5 {
font-size: 15px;
line-height: 1.1;
color: #1b2a28;
margin: 0 0 6px
}

.lnch .hes-item p {
font-size: 13px;
line-height: 1.75;
color: #3a4f4d;
margin: 0
}

.lnch .hes-pull {
margin-top: 28px;
padding: 28px;
background: #1b2a28;
border-radius: 28px;
color: #fff
}

.lnch .hes-pull p {
font-size: 18px;
line-height: 1.75;
color: #A9CDC0;
margin: 0
}

.lnch .hes-pull .attr {
font-size: 13px;
letter-spacing: .08em;
text-transform: uppercase;
color: #3A938D;
margin-top: 14px;
display: block
}

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

.lnch .hes-img-col .hes-img {
height: 320px
}
}

@media (max-width: 768px) {
.lnch .hes-img-col .hes-img {
height: 240px
}
}

.lnch .rep-blk {
padding: 96px 0;
background: #E5F3EB;
position: relative;
overflow: hidden
}

.lnch .rep-blk .rep-bg-num {
position: absolute;
right: -28px;
top: 28px;
font-size: clamp(80px, 16vw, 220px);
line-height: 1.1;
font-weight: 900;
color: #a9cdc059;
pointer-events: none;
user-select: none;
letter-spacing: -.05em
}

.lnch .rep-top {
max-width: 640px;
margin-bottom: 56px
}

.lnch .rep-top h2 {
font-size: 32px;
line-height: 1.1;
letter-spacing: -.02em;
color: #1b2a28;
margin: 0 0 14px
}

.lnch .rep-top p {
font-size: 15px;
line-height: 1.75;
color: #3a4f4d;
margin: 0
}

.lnch .rep-rows {
display: flex;
flex-direction: column;
gap: 28px
}

.lnch .rep-row {
display: flex;
flex-direction: row;
gap: 28px;
align-items: flex-start;
padding: 28px;
background: #fff;
border-radius: 28px;
box-shadow: -1px 6px 20px -2px #3a938d17;
transition: box-shadow .45s cubic-bezier(0.16, 1, 0.3, 1)
}

.lnch .rep-row:hover {
box-shadow: -1px 8px 40px -2px #3a938d1f
}

.lnch .rep-row.alt {
flex-direction: row-reverse;
background: #3A938D
}

.lnch .rep-row.alt .rep-row-txt h4,
.lnch .rep-row.alt .rep-row-txt p {
color: #fff
}

.lnch .rep-row.alt .rep-row-txt .rep-tag {
background: #ffffff26;
color: #fff
}

.lnch .rep-row-num {
flex-shrink: 0;
width: 56px;
height: 56px;
background: #E5F3EB;
border-radius: 28px;
display: flex;
align-items: center;
justify-content: center;
font-size: 23px;
line-height: 1.1;
font-weight: 700;
color: #3A938D;
letter-spacing: -.02em
}

.lnch .rep-row.alt .rep-row-num {
background: #ffffff26;
color: #fff
}

.lnch .rep-row-txt {
flex: 1
}

.lnch .rep-row-txt h4 {
font-size: 18px;
line-height: 1.1;
color: #1b2a28;
margin: 0 0 6px;
letter-spacing: -.01em
}

.lnch .rep-row-txt p {
font-size: 13px;
line-height: 1.75;
color: #3a4f4d;
margin: 0
}

.lnch .rep-row-txt .rep-tag {
display: inline-block;
padding: 6px 14px;
background: #E5F3EB;
color: #3A938D;
font-size: 13px;
letter-spacing: .06em;
text-transform: uppercase;
border-radius: 3px;
margin-bottom: 14px
}

.lnch .rep-img-col {
flex-shrink: 0;
width: 200px;
height: 160px;
border-radius: 3px;
overflow: hidden
}

.lnch .rep-img-col img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
transition: transform .55s cubic-bezier(0.16, 1, 0.3, 1)
}

.lnch .rep-row:hover .rep-img-col img {
transform: scale(1.04)
}

@media (max-width: 1024px) {
.lnch .rep-img-col {
width: 140px;
height: 120px
}
}

@media (max-width: 768px) {

.lnch .rep-row,
.lnch .rep-row.alt {
flex-direction: column
}

.lnch .rep-img-col {
width: 100%;
height: 160px
}
}

.lnch .fit-blk {
padding: 96px 0;
background: #fff;
position: relative
}

.lnch .fit-blk .fit-deco {
position: absolute;
bottom: 56px;
right: 96px;
pointer-events: none
}

.lnch .fit-blk .fit-deco span {
display: block;
border-radius: 50%;
background: #E5F3EB;
position: absolute
}

.lnch .fit-top {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 56px;
margin-bottom: 56px;
align-items: end
}

.lnch .fit-top h2 {
font-size: 32px;
line-height: 1.1;
letter-spacing: -.02em;
color: #1b2a28;
margin: 0 0 14px
}

.lnch .fit-top p {
font-size: 15px;
line-height: 1.75;
color: #3a4f4d;
margin: 0
}

.lnch .fit-top .eyebrow {
font-size: 13px;
letter-spacing: .12em;
text-transform: uppercase;
color: #3A938D;
margin-bottom: 14px;
display: block
}

.lnch .fit-cols {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 28px
}

.lnch .fit-col {
border-radius: 28px;
padding: 28px;
box-shadow: -1px 6px 20px -2px #3a938d17
}

.lnch .fit-col.yes {
background: #1b2a28
}

.lnch .fit-col.no {
background: #fff;
border: 1px solid #E5F3EB
}

.lnch .fit-col h4 {
font-size: 15px;
line-height: 1.1;
letter-spacing: .08em;
text-transform: uppercase;
margin: 0 0 28px
}

.lnch .fit-col.yes h4 {
color: #A9CDC0
}

.lnch .fit-col.no h4 {
color: #3a4f4d
}

.lnch .fit-list {
list-style: none;
padding: 0;
margin: 0;
display: flex;
flex-direction: column;
gap: 14px
}

.lnch .fit-list li {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 14px;
font-size: 15px;
line-height: 1.75
}

.lnch .fit-col.yes .fit-list li {
color: #fff
}

.lnch .fit-col.no .fit-list li {
color: #3a4f4d
}

.lnch .fit-ico {
flex-shrink: 0;
width: 22px;
height: 22px;
margin-top: 2px
}

.lnch .fit-bottom {
margin-top: 56px;
padding: 28px;
background: #E5F3EB;
border-radius: 28px;
display: grid;
grid-template-columns: 1fr auto;
gap: 28px;
align-items: center
}

.lnch .fit-bottom p {
font-size: 15px;
line-height: 1.75;
color: #1b2a28;
margin: 0
}

.lnch .fit-bottom p strong {
color: #3A938D
}

@media (max-width: 1024px) {
.lnch .fit-top {
grid-template-columns: 1fr;
gap: 28px
}

.lnch .fit-cols {
grid-template-columns: 1fr
}

.lnch .fit-bottom {
grid-template-columns: 1fr
}
}

@media (max-width: 360px) {
.lnch .fit-bottom {
padding: 14px
}
}

.suc-page {
min-height: 80vh;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
padding: 96px 28px;
background-color: #fff
}

.suc-page .suc-wrap {
max-width: 1280px;
width: 100%;
display: flex;
flex-direction: column;
align-items: center;
gap: 28px
}

.suc-page .suc-icon {
width: 72px;
height: 72px;
flex-shrink: 0
}

.suc-page .suc-icon .ic-ring {
fill: none;
stroke: #3A938D;
stroke-width: 2.5;
stroke-dasharray: 226;
stroke-dashoffset: 0;
animation: ring-draw .55s cubic-bezier(0.16, 1, 0.3, 1) forwards
}

.suc-page .suc-icon .ic-check {
fill: none;
stroke: #3A938D;
stroke-width: 2.5;
stroke-linecap: round;
stroke-linejoin: round;
stroke-dasharray: 40;
stroke-dashoffset: 40;
animation: check-draw .45s cubic-bezier(0.16, 1, 0.3, 1) .4s forwards
}

@keyframes ring-draw {
from {
stroke-dashoffset: 226
}

to {
stroke-dashoffset: 0
}
}

@keyframes check-draw {
from {
stroke-dashoffset: 40
}

to {
stroke-dashoffset: 0
}
}

.suc-page .suc-label {
font-size: 13px;
letter-spacing: .12em;
text-transform: uppercase;
color: #3A938D;
line-height: 1.1;
margin: 0
}

.suc-page .suc-head {
font-size: 62px;
line-height: 1.1;
letter-spacing: -.02em;
color: #111;
margin: 0;
text-align: center
}

.suc-page .suc-body {
font-size: 18px;
line-height: 1.75;
color: #333;
text-align: center;
max-width: 560px;
margin: 0
}

.suc-page .suc-divider {
width: 56px;
height: 2px;
background: linear-gradient(90deg, #3A938D 50%, #E5F3EB 50%)
}

.suc-page .suc-actions {
display: flex;
flex-direction: row;
gap: 14px;
flex-wrap: wrap;
justify-content: center;
margin-top: 14px
}

.suc-page .suc-actions .btn-pri,
.suc-page .suc-actions .btn-sec {
display: inline-flex;
align-items: center;
gap: 6px;
padding: 14px 28px;
font-size: 13px;
letter-spacing: .1em;
text-transform: uppercase;
text-decoration: none;
border-radius: 3px;
position: relative;
overflow: hidden;
transition: color .45s cubic-bezier(0.16, 1, 0.3, 1), background-color .45s cubic-bezier(0.16, 1, 0.3, 1);
cursor: pointer;
border: 2px solid transparent
}

.suc-page .suc-actions .btn-pri {
background-color: #3A938D;
color: #fff;
border-color: #3A938D
}

.suc-page .suc-actions .btn-pri::before,
.suc-page .suc-actions .btn-sec::before {
content: '';
position: absolute;
inset: 0;
border-radius: 3px;
border: 2px solid #3A938D;
clip-path: inset(0 100% 0 0);
transition: clip-path .4s cubic-bezier(0.16, 1, 0.3, 1);
pointer-events: none
}

.suc-page .suc-actions .btn-pri:hover::before,
.suc-page .suc-actions .btn-sec:hover::before {
clip-path: inset(0 0% 0 0)
}

.suc-page .suc-actions .btn-pri:hover {
background-color: #2d7a75;
border-color: #2d7a75
}

.suc-page .suc-actions .btn-sec {
background-color: transparent;
color: #3A938D;
border-color: #A9CDC0
}

.suc-page .suc-actions .btn-sec:hover {
background-color: #E5F3EB;
border-color: #3A938D
}

.suc-page .suc-actions .btn-pri:focus-visible,
.suc-page .suc-actions .btn-sec:focus-visible {
outline: 2px solid #3A938D;
outline-offset: 3px
}

.suc-page .suc-note {
font-size: 13px;
line-height: 1.75;
color: #555;
text-align: center;
margin: 0
}

.suc-page .suc-note .note-em {
color: #3A938D
}

.suc-page .suc-card {
background-color: #E5F3EB;
border-radius: 28px;
padding: 28px;
max-width: 480px;
width: 100%;
box-shadow: -1px 6px 20px -2px #3a938d17;
display: flex;
flex-direction: column;
gap: 14px
}

.suc-page .suc-card .card-row {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 14px
}

.suc-page .suc-card .card-row .cr-icon {
flex-shrink: 0;
width: 20px;
height: 20px;
margin-top: 2px
}

.suc-page .suc-card .card-row .cr-text {
font-size: 15px;
line-height: 1.75;
color: #222;
margin: 0
}

.suc-page .suc-card .card-row .cr-text strong {
color: #3A938D
}

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

.suc-page .suc-head {
font-size: 32px
}

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

.suc-page .suc-actions {
flex-direction: column;
align-items: stretch
}

.suc-page .suc-actions .btn-pri,
.suc-page .suc-actions .btn-sec {
justify-content: center
}
}

@media (max-width: 360px) {
.suc-page {
padding: 56px 14px
}

.suc-page .suc-head {
font-size: 23px
}
}