html {
box-sizing: border-box;
scroll-behavior: auto
}

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

body {
margin: 0
}

:focus-visible {
outline: 3px solid #87B129;
outline-offset: 2px
}

.pg-head {
background: #0e1408;
font-family: 'Roboto Mono', monospace;
position: relative;
overflow: hidden
}

.pg-head::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: linear-gradient(135deg, #0e1408 0%, #1a2410 40%, #12181c 100%);
pointer-events: none
}

.pg-head__strip {
position: relative;
z-index: 2;
border-bottom: 1px solid #87b1292e;
background: #87b1290f
}

.pg-head__strip-inner {
max-width: 1600px;
margin: 0 auto;
padding: 8px 32px;
display: flex;
align-items: center;
justify-content: space-between;
gap: 16px
}

.pg-head__contact-row {
display: flex;
align-items: center;
gap: 32px
}

.pg-head__contact-item {
display: flex;
align-items: center;
gap: 8px;
color: #D1E2E4;
font-size: 15px;
line-height: 1.3;
text-decoration: none;
transition: color .5s cubic-bezier(0.22, 1, 0.36, 1)
}

.pg-head__contact-item:hover {
color: #87B129
}

.pg-head__contact-icon {
width: 14px;
height: 14px;
flex-shrink: 0
}

.pg-head__trust {
display: flex;
align-items: center;
gap: 8px
}

.pg-head__badge {
display: flex;
align-items: center;
gap: 8px;
background: #87b1291f;
border: 1px solid #87b1294d;
border-radius: 4px;
padding: 4px 16px;
color: #87B129;
font-size: 15px;
line-height: 1.3;
font-weight: 600
}

.pg-head__badge-dot {
width: 6px;
height: 6px;
border-radius: 50%;
background: #87B129;
box-shadow: 0 1px 6px 0 #87b12912 0 4px 25px 0 #87b1291c;
flex-shrink: 0
}

.pg-head__body {
position: relative;
z-index: 2;
max-width: 1600px;
margin: 0 auto;
padding: 32px;
display: flex;
align-items: center;
gap: 32px
}

.pg-head__brand {
flex-shrink: 0
}

.pg-head__logo-frame {
width: 96px;
height: 96px;
border-radius: 50%;
border: 2px dashed #87b1298c;
display: flex;
align-items: center;
justify-content: center;
background: #d1e2e40f;
box-shadow: 0 1px 6px 0 #87b12912 0 4px 25px 0 #87b1291c;
padding: 8px
}

.pg-head__logo-frame img {
width: 72px;
height: 72px;
object-fit: contain;
display: block
}

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

.pg-head__name {
font-size: 36px;
line-height: 1.1;
font-weight: 700;
color: #D1E2E4;
letter-spacing: -.03em;
font-style: italic
}

.pg-head__name span {
color: #87B129
}

.pg-head__tagline {
font-size: 15px;
line-height: 1.3;
color: #D8B4D9;
font-weight: 400;
letter-spacing: .04em
}

.pg-head__menu-area {
flex: 1;
display: flex;
justify-content: flex-end
}

.pg-menu {
display: flex;
align-items: center;
gap: 4px;
list-style: none;
margin: 0;
padding: 0;
flex-wrap: wrap;
justify-content: flex-end
}

.pg-menu__item {
display: flex
}

.pg-menu__link {
display: flex;
align-items: center;
padding: 8px 16px;
color: #D1E2E4;
font-family: 'Roboto Mono', monospace;
font-size: 15px;
line-height: 1.3;
font-weight: 500;
text-decoration: none;
border-radius: 4px;
border: 1px solid transparent;
min-height: 44px;
transition: color .45s cubic-bezier(0.22, 1, 0.36, 1), border-color .5s cubic-bezier(0.22, 1, 0.36, 1), background .5s cubic-bezier(0.22, 1, 0.36, 1);
position: relative
}

.pg-menu__link:hover {
color: #87B129;
border-color: #87b1294d;
background: #87b12912
}

.pg-menu__link--active {
color: #87B129;
border-color: #87b12966;
background: #87b1291a
}

.pg-head__accent-line {
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 2px;
background: linear-gradient(90deg, transparent 0%, #87B129 30%, #D8B4D9 70%, transparent 100%);
z-index: 3
}

.pg-foot {
background: #87B129;
font-family: 'Roboto Mono', monospace;
position: relative
}

.pg-foot__rule {
height: 1px;
background: #0e140833;
margin: 0;
border: none
}

.pg-foot__logo-row {
display: flex;
justify-content: center;
padding: 32px 32px 16px
}

.pg-foot__logo-frame {
width: 80px;
height: 80px;
border-radius: 50%;
border: 2px dashed #0e140859;
display: flex;
align-items: center;
justify-content: center;
background: #ffffff26;
box-shadow: 0 1px 6px 0 #d1e2e412 0 4px 25px 0 #d1e2e41c;
padding: 8px
}

.pg-foot__logo-frame img {
width: 56px;
height: 56px;
object-fit: contain;
display: block
}

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

.pg-foot__copy {
font-size: 15px;
line-height: 1.6;
color: #0e1408;
font-weight: 500
}

.pg-foot__links {
display: flex;
align-items: center;
gap: 16px;
list-style: none;
margin: 0;
padding: 0
}

.pg-foot__link {
font-size: 15px;
line-height: 1.6;
color: #0e1408;
text-decoration: none;
font-weight: 500;
border-bottom: 1px solid #0e14084d;
transition: border-color .4s ease-in-out, color .4s ease-in-out
}

.pg-foot__link:hover {
color: #0e1408;
border-color: #0e1408
}

.pg-foot__addr {
font-size: 15px;
line-height: 1.6;
color: #0e1408bf;
font-weight: 400
}

.consent-tray {
position: fixed;
bottom: 32px;
left: 0;
right: 0;
margin: 0 auto;
width: 560px;
max-width: calc(100% - 32px);
z-index: 4000;
font-family: 'Roboto Mono', monospace;
display: none
}

.consent-tray__tile {
background: #12181c;
border: 1px solid #87b12940;
border-radius: 6px;
padding: 16px 32px;
display: flex;
align-items: center;
justify-content: space-between;
gap: 16px;
box-shadow: 0 12px 52px 0 #87b1291c;
flex-wrap: wrap
}

.consent-tray__icon {
width: 20px;
height: 20px;
flex-shrink: 0
}

.consent-tray__msg {
flex: 1;
font-size: 15px;
line-height: 1.6;
color: #D1E2E4;
min-width: 160px
}

.consent-tray__actions {
display: flex;
align-items: center;
gap: 16px;
flex-shrink: 0
}

.consent-tray__btn {
background: none;
border: none;
cursor: pointer;
font-family: 'Roboto Mono', monospace;
font-size: 15px;
line-height: 1.3;
padding: 4px 0;
text-decoration: underline;
text-underline-offset: 3px;
transition: color .45s cubic-bezier(0.22, 1, 0.36, 1)
}

.consent-tray__btn--accept {
color: #87B129
}

.consent-tray__btn--accept:hover,
.consent-tray__btn--accept:focus-visible {
color: #D1E2E4
}

.consent-tray__btn--decline {
color: #D8B4D9
}

.consent-tray__btn--decline:hover,
.consent-tray__btn--decline:focus-visible {
color: #D1E2E4
}

.consent-mini {
position: fixed;
bottom: 16px;
right: 16px;
z-index: 4000;
font-family: 'Roboto Mono', monospace;
display: none
}

.consent-mini__btn {
background: #12181c;
border: 1px solid #87b1294d;
border-radius: 4px;
padding: 8px 16px;
color: #87B129;
font-family: 'Roboto Mono', monospace;
font-size: 15px;
line-height: 1.3;
cursor: pointer;
box-shadow: 0 4px 25px 0 #87b1291c;
transition: border-color .45s cubic-bezier(0.22, 1, 0.36, 1), color .45s cubic-bezier(0.22, 1, 0.36, 1)
}

.consent-mini__btn:hover {
color: #D1E2E4;
border-color: #87b12999
}

@media (max-width: 768px) {
.pg-head__strip-inner {
flex-direction: column;
align-items: flex-start;
gap: 8px;
padding: 8px 16px
}

.pg-head__contact-row {
flex-wrap: wrap;
gap: 8px
}

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

.pg-head__menu-area {
justify-content: flex-start;
width: 100%
}

.pg-menu {
justify-content: flex-start
}

.pg-foot__bar {
flex-direction: column;
align-items: flex-start;
padding: 16px;
gap: 8px
}
}

.agreement-text {
max-width: 1600px;
margin: 0 auto;
padding: 32px;
color: #D1E2E4;
background: #141a0e;
line-height: 1.9;
font-size: 17px
}

.agreement-text ul,
.agreement-text ol {
padding-left: 32px;
margin-top: 16px;
margin-bottom: 16px
}

.agreement-text li {
margin-bottom: 8px;
line-height: 1.6;
color: #D1E2E4
}

.agreement-text ul li {
list-style: none;
position: relative;
padding-left: 16px
}

.agreement-text ul li::before {
content: "";
position: absolute;
left: 0;
top: 10px;
width: 6px;
height: 6px;
border-radius: 2px;
background: #87B129
}

.agreement-text ol li {
list-style: decimal;
padding-left: 8px
}

.agreement-text ol li::marker {
color: #87B129;
font-size: 15px
}

.agreement-text strong,
.agreement-text b {
color: #D8B4D9;
font-weight: 700;
letter-spacing: -.01em
}

.agreement-text a {
color: #87B129;
text-decoration: underline;
text-decoration-thickness: 1px;
text-underline-offset: 3px;
transition: color .5s cubic-bezier(0.22, 1, 0.36, 1), text-decoration-color .5s cubic-bezier(0.22, 1, 0.36, 1)
}

.agreement-text a:hover {
color: #D8B4D9;
text-decoration-color: #D8B4D9
}

.agreement-text table {
width: 100%;
border-collapse: collapse;
margin-top: 32px;
margin-bottom: 32px;
font-size: 15px;
border-radius: 4px;
overflow: hidden;
box-shadow: 0 4px 25px 0 #87b1291c
}

.agreement-text thead {
background: #1e2a10
}

.agreement-text thead th {
color: #87B129;
font-size: 15px;
font-weight: 700;
letter-spacing: -.01em;
padding: 16px;
text-align: left;
border-bottom: 2px solid #87B129
}

.agreement-text tbody tr {
background: #181f0f;
transition: background .45s ease-in-out
}

.agreement-text tbody tr:nth-child(even) {
background: #1b2512
}

.agreement-text tbody tr:hover {
background: #202e14
}

.agreement-text td {
padding: 16px;
color: #D1E2E4;
border-bottom: 1px solid #87b1291c;
vertical-align: top;
line-height: 1.6
}

.agreement-text hr {
border: none;
height: 1px;
background: linear-gradient(90deg, transparent, #87B129, #D8B4D9, transparent);
margin-top: 32px;
margin-bottom: 32px;
opacity: .4
}

.agreement-text div {
margin-bottom: 16px
}

@media (max-width: 768px) {
.agreement-text {
padding: 16px;
font-size: 15px
}

.agreement-text ul,
.agreement-text ol {
padding-left: 16px
}

.agreement-text table {
display: block;
overflow-x: auto
}

.agreement-text thead th,
.agreement-text td {
padding: 8px
}
}

.sstories {
background: #111416;
color: #D1E2E4;
overflow-x: clip;
position: relative
}

.sstories .pg-wrap {
max-width: 1600px;
margin: 0 auto;
padding: 0 32px
}

.sstories a {
color: #87B129;
text-decoration: none;
border-bottom: 1px solid transparent;
transition: border-color .5s cubic-bezier(0.22, 1, 0.36, 1)
}

.sstories a:hover {
border-bottom-color: #87B129
}

.sstories .tb {
display: flex;
flex-direction: row;
min-height: 0
}

.sstories .tb__left {
flex: 0 0 60%;
background: #161a1d;
padding: 64px 48px 64px 0;
display: flex;
flex-direction: column;
justify-content: center;
position: relative
}

.sstories .tb__left::before {
content: '';
position: absolute;
left: -120px;
top: -80px;
width: 320px;
height: 320px;
background: #87b12921;
border-radius: 50%;
filter: blur(72px);
pointer-events: none
}

.sstories .tb__left::after {
content: '';
position: absolute;
right: 40px;
bottom: -60px;
width: 180px;
height: 180px;
background: #d8b4d91a;
border-radius: 50%;
filter: blur(56px);
pointer-events: none
}

.sstories .tb__prefix {
display: inline-flex;
align-items: center;
gap: 8px;
margin-bottom: 16px
}

.sstories .tb__prefix-shape {
width: 10px;
height: 10px;
background: #87B129;
border-radius: 2px;
transform: rotate(45deg);
flex-shrink: 0
}

.sstories .tb__prefix-label {
font-size: 15px;
color: #87B129;
letter-spacing: .08em;
text-transform: uppercase
}

.sstories .tb__h1 {
font-size: 68px;
line-height: 1.1;
letter-spacing: -.03em;
text-transform: uppercase;
color: #D1E2E4;
margin: 0 0 16px
}

.sstories .tb__h1 span {
color: #87B129
}

.sstories .tb__sub {
font-size: 17px;
line-height: 1.6;
color: #9ab5b8;
max-width: 480px;
margin: 0
}

.sstories .tb__right {
flex: 0 0 40%;
background: #1a2010;
position: relative;
display: flex;
align-items: center;
justify-content: center;
overflow: hidden
}

.sstories .tb__img-wrap {
width: 100%;
height: 100%;
min-height: 360px;
position: relative
}

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

.sstories .tb__img-wrap:hover img {
filter: brightness(0.95)
}

.sstories .tb__leak {
position: absolute;
top: 0;
right: 0;
width: 220px;
height: 220px;
background: radial-gradient(ellipse at top right, #87b12961 0%, #87b12914 55%, transparent 80%);
pointer-events: none
}

.sstories .div-curve {
line-height: 0;
background: #161a1d
}

.sstories .div-curve svg {
display: block;
width: 100%
}

.sstories .stat-blk {
background: #13171a;
padding: 80px 0 64px;
position: relative
}

.sstories .stat-blk__geo {
position: absolute;
top: 32px;
right: 80px;
width: 160px;
height: 160px;
border: 1px solid #87b1292e;
border-radius: 4px;
transform: rotate(18deg);
animation: geo-pulse 4s ease-in-out infinite;
pointer-events: none
}

.sstories .stat-blk__geo--sm {
width: 80px;
height: 80px;
top: 72px;
right: 148px;
border-color: #d8b4d921;
animation-delay: 1.4s
}

@keyframes geo-pulse {

0%,
100% {
opacity: .5
}

50% {
opacity: 1
}
}

.sstories .stat-blk__grid {
display: flex;
flex-direction: row;
gap: 32px;
align-items: stretch
}

.sstories .stat-blk__hero {
flex: 0 0 42%;
display: flex;
flex-direction: column;
justify-content: center;
border-right: 1px solid #87b12926;
padding-right: 32px
}

.sstories .stat-blk__num {
font-size: 68px;
line-height: 1.1;
color: #87B129;
letter-spacing: -.04em;
display: block;
animation: zoom-settle .7s cubic-bezier(0.22, 1, 0.36, 1) both
}

@keyframes zoom-settle {
from {
transform: scale(1.18);
opacity: .4
}

to {
transform: scale(1);
opacity: 1
}
}

.sstories .stat-blk__num-label {
font-size: 26px;
line-height: 1.3;
color: #D1E2E4;
text-transform: uppercase;
letter-spacing: -.02em;
margin: 8px 0 16px;
display: block
}

.sstories .stat-blk__ctx {
font-size: 15px;
line-height: 1.6;
color: #7a9ea2;
margin: 0
}

.sstories .stat-blk__side {
flex: 1;
display: flex;
flex-direction: column;
gap: 32px
}

.sstories .stat-item {
display: flex;
flex-direction: row;
gap: 16px;
align-items: flex-start;
padding-bottom: 32px;
border-bottom: 1px solid #d1e2e414
}

.sstories .stat-item:last-child {
border-bottom: none;
padding-bottom: 0
}

.sstories .stat-item__val {
font-size: 36px;
line-height: 1.1;
color: #D8B4D9;
letter-spacing: -.03em;
flex-shrink: 0;
min-width: 80px
}

.sstories .stat-item__desc {
font-size: 15px;
line-height: 1.6;
color: #8faeb1
}

.sstories .stat-item__desc strong {
color: #D1E2E4;
display: block;
font-size: 17px;
margin-bottom: 4px
}

.sstories .div-line {
background: #13171a;
padding: 0
}

.sstories .div-line svg {
display: block;
width: 100%
}

.sstories .stories-blk {
background: #181d21;
padding: 72px 0;
position: relative
}

.sstories .stories-blk__hd {
display: flex;
flex-direction: row;
align-items: flex-end;
justify-content: space-between;
margin-bottom: 48px;
gap: 32px
}

.sstories .stories-blk__h2 {
font-size: 36px;
line-height: 1.3;
color: #D1E2E4;
margin: 0;
letter-spacing: -.02em
}

.sstories .stories-blk__h2-prefix {
display: block;
width: 28px;
height: 4px;
background: #87B129;
border-radius: 2px;
margin-bottom: 8px
}

.sstories .stories-blk__note {
font-size: 15px;
line-height: 1.6;
color: #6e8e91;
max-width: 320px;
text-align: right;
margin: 0
}

.sstories .stories-list {
display: flex;
flex-direction: column;
gap: 32px
}

.sstories .story-card {
display: flex;
flex-direction: row;
background: #1e2428;
border-radius: 6px;
overflow: hidden;
box-shadow: 0 4px 25px 0 #87b1291c;
transition: box-shadow .5s cubic-bezier(0.22, 1, 0.36, 1), transform .5s cubic-bezier(0.22, 1, 0.36, 1);
position: relative
}

.sstories .story-card:hover {
box-shadow: 0 12px 52px 0 #87b1291c;
transform: translateY(-2px)
}

.sstories .story-card:hover .story-card__reveal {
clip-path: inset(0 0 0 0);
opacity: 1
}

.sstories .story-card__portrait {
flex: 0 0 100px;
position: relative
}

.sstories .story-card__portrait img {
width: 100px;
height: 140px;
object-fit: cover;
object-position: center;
display: block;
filter: brightness(0.8) saturate(0.85);
transition: filter .6s cubic-bezier(0.22, 1, 0.36, 1)
}

.sstories .story-card:hover .story-card__portrait img {
filter: brightness(1) saturate(1)
}

.sstories .story-card__body {
flex: 1;
padding: 24px 32px;
display: flex;
flex-direction: column;
justify-content: center;
gap: 8px
}

.sstories .story-card__name {
font-size: 17px;
line-height: 1.3;
color: #D1E2E4;
font-weight: 700;
margin: 0
}

.sstories .story-card__context {
font-size: 15px;
line-height: 1.3;
color: #87B129;
margin: 0
}

.sstories .story-card__quote {
font-size: 15px;
line-height: 1.6;
color: #8faeb1;
margin: 0;
text-align: justify
}

.sstories .story-card__tag {
display: inline-block;
font-size: 15px;
color: #D8B4D9;
border: 1px solid #d8b4d94d;
border-radius: 4px;
padding: 4px 8px;
margin-top: 4px;
align-self: flex-start
}

.sstories .story-card__reveal {
position: absolute;
bottom: 0;
left: 0;
width: 100%;
height: 3px;
background: linear-gradient(90deg, #87B129 0%, #D8B4D9 60%, #D1E2E4 100%);
clip-path: inset(0 100% 0 0);
opacity: 0;
transition: clip-path .6s cubic-bezier(0.22, 1, 0.36, 1), opacity .4s ease-in-out
}

.sstories .story-card--no-portrait .story-card__body {
padding-left: 32px
}

.sstories .story-card__avatar-ph {
flex: 0 0 100px;
background: #252c32;
display: flex;
align-items: center;
justify-content: center
}

.sstories .story-card__avatar-ph svg {
width: 40px;
height: 40px;
opacity: .3
}

.sstories .div-wave {
background: #181d21;
line-height: 0
}

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

.sstories .ctx-blk {
background: #141820;
padding: 72px 0 80px;
position: relative
}

.sstories .ctx-blk__split {
display: flex;
flex-direction: row;
gap: 32px;
align-items: stretch
}

.sstories .ctx-blk__img-col {
flex: 0 0 38%;
position: relative
}

.sstories .ctx-blk__img-wrap {
width: 100%;
height: 100%;
min-height: 400px;
border-radius: 4px;
overflow: hidden;
box-shadow: 0 12px 52px 0 #87b1291c
}

.sstories .ctx-blk__img-wrap img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
filter: brightness(0.75);
transition: filter .65s cubic-bezier(0.22, 1, 0.36, 1)
}

.sstories .ctx-blk__img-wrap:hover img {
filter: brightness(1)
}

.sstories .ctx-blk__text-col {
flex: 1;
display: flex;
flex-direction: column;
justify-content: center;
gap: 16px
}

.sstories .ctx-blk__h3 {
font-size: 36px;
line-height: 1.3;
color: #D1E2E4;
letter-spacing: -.02em;
margin: 0
}

.sstories .ctx-blk__h3 em {
color: #87B129;
font-style: normal
}

.sstories .ctx-blk__intro {
font-size: 17px;
line-height: 1.6;
color: #9ab5b8;
margin: 0
}

.sstories .ctx-blk__cols {
display: flex;
flex-direction: row;
gap: 32px
}

.sstories .ctx-blk__col p {
font-size: 15px;
line-height: 1.6;
color: #7a9ea2;
margin: 0 0 16px;
text-align: justify
}

.sstories .ctx-blk__list {
list-style: none;
padding: 0;
margin: 0;
display: flex;
flex-direction: column
}

.sstories .ctx-blk__list li {
font-size: 15px;
line-height: 1.6;
color: #8faeb1;
padding: 8px 0;
border-bottom: 1px solid #d1e2e41a
}

.sstories .ctx-blk__list li:last-child {
border-bottom: none
}

.sstories .ctx-blk__bg-accent {
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 50%;
background: #111416;
z-index: 0;
pointer-events: none
}

.sstories .ctx-blk__split {
position: relative;
z-index: 1
}

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

.sstories .tb__left {
flex: none;
padding: 48px 32px
}

.sstories .tb__right {
flex: none
}

.sstories .tb__img-wrap {
min-height: 240px
}

.sstories .tb__h1 {
font-size: 36px
}

.sstories .stat-blk__grid {
flex-direction: column
}

.sstories .stat-blk__hero {
flex: none;
border-right: none;
border-bottom: 1px solid #87b12926;
padding-right: 0;
padding-bottom: 32px
}

.sstories .stories-blk__hd {
flex-direction: column;
align-items: flex-start
}

.sstories .stories-blk__note {
text-align: left
}

.sstories .story-card {
flex-direction: column
}

.sstories .story-card__portrait img {
width: 100%;
height: 180px
}

.sstories .story-card__avatar-ph {
flex: none;
height: 80px
}

.sstories .ctx-blk__split {
flex-direction: column
}

.sstories .ctx-blk__img-col {
flex: none
}

.sstories .ctx-blk__img-wrap {
min-height: 260px
}

.sstories .ctx-blk__cols {
flex-direction: column;
gap: 16px
}

.sstories .stat-blk__geo {
display: none
}
}

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

.sstories .tb__left {
padding: 32px 16px
}

.sstories .tb__h1 {
font-size: 26px
}

.sstories .stat-blk__num {
font-size: 36px
}
}

.abt {
background: #0e1208;
color: #D1E2E4;
overflow-x: clip;
position: relative
}

.abt .geo-bg {
position: absolute;
top: 80px;
right: -120px;
width: 420px;
height: 420px;
border: 1px solid #87b12914;
border-radius: 0;
animation: geo-spin 28s linear infinite;
pointer-events: none;
z-index: 0
}

.abt .geo-bg::before {
content: '';
position: absolute;
top: 40px;
left: 40px;
right: 40px;
bottom: 40px;
border: 1px solid #d8b4d912;
border-radius: 0
}

@keyframes geo-spin {
from {
transform: rotate(0deg)
}

to {
transform: rotate(360deg)
}
}

.abt .pg-lead {
position: relative;
z-index: 1;
padding: 96px 32px 48px;
max-width: 1600px;
margin: 0 auto
}

.abt .pg-lead__dot-grid {
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background-image: radial-gradient(circle, #87b1292e 1px, transparent 1px);
background-size: 28px 28px;
pointer-events: none;
z-index: 0;
mask-image: linear-gradient(to bottom, #000000b3 0%, #0000001a 100%)
}

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

.abt .pg-lead__text {
flex: 1 1 0
}

.abt .pg-lead__tag {
font-size: 15px;
line-height: 1.6;
letter-spacing: .12em;
text-transform: uppercase;
color: #87B129;
margin-bottom: 16px
}

.abt .pg-lead__h1 {
font-size: 68px;
line-height: 1.1;
letter-spacing: -.03em;
text-transform: uppercase;
color: #D1E2E4;
margin: 0 0 32px
}

.abt .pg-lead__h1 span {
color: #87B129
}

.abt .pg-lead__stmt {
font-size: 26px;
line-height: 1.3;
color: #D8B4D9;
max-width: 560px
}

.abt .pg-lead__num {
flex: 0 0 auto;
text-align: right;
padding-bottom: 8px
}

.abt .pg-lead__num-val {
font-size: 68px;
line-height: 1.1;
letter-spacing: -.04em;
color: #87b12938;
font-weight: 700
}

.abt .pg-lead__num-label {
font-size: 15px;
line-height: 1.6;
color: #d1e2e480;
letter-spacing: .06em
}

.abt .pg-lead__flip-row {
display: flex;
flex-direction: row;
gap: 16px;
margin-top: 32px;
perspective: 900px
}

.abt .flip-card {
flex: 1 1 0;
background: linear-gradient(158deg, #141a09 0%, #1b2410 60%, #0e1208 100%);
border: 1px solid #87b12924;
border-radius: 4px;
padding: 16px;
box-shadow: 0 4px 25px 0 #87b1291c;
transform-style: preserve-3d;
animation: flip-in .65s cubic-bezier(0.22, 1, 0.36, 1) both
}

.abt .flip-card:nth-child(2) {
animation-delay: .12s
}

.abt .flip-card:nth-child(3) {
animation-delay: .22s
}

@keyframes flip-in {
from {
transform: rotateY(-90deg);
opacity: 0
}

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

.abt .flip-card__num {
font-size: 36px;
line-height: 1.1;
color: #87B129;
font-weight: 700;
letter-spacing: -.02em
}

.abt .flip-card__desc {
font-size: 15px;
line-height: 1.6;
color: #d1e2e4b3;
margin-top: 4px
}

.abt .story-sec {
position: relative;
z-index: 1;
background: #111509;
border-top: 1px solid #87b1291a;
border-bottom: 1px solid #d8b4d914
}

.abt .story-sec__wrap {
max-width: 1600px;
margin: 0 auto;
padding: 32px 32px 64px;
display: grid;
grid-template-columns: 1fr 1fr 1fr;
grid-template-rows: auto auto;
gap: 32px
}

.abt .story-sec__lead {
grid-column: 1 / 3;
grid-row: 1
}

.abt .story-sec__portrait-col {
grid-column: 3;
grid-row: 1 / 3;
display: flex;
flex-direction: column;
align-items: flex-end;
gap: 16px
}

.abt .story-sec__body {
grid-column: 1 / 3;
grid-row: 2;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 32px
}

.abt .story-sec__h2 {
font-size: 36px;
line-height: 1.3;
color: #D1E2E4;
margin: 0 0 16px
}

.abt .story-sec__intro {
font-size: 17px;
line-height: 1.9;
color: #d1e2e4d9;
text-align: justify
}

.abt .story-sec__col p {
font-size: 15px;
line-height: 1.9;
color: #d1e2e4b8;
text-align: justify;
margin: 0 0 16px
}

.abt .portrait-frame {
width: 100%;
aspect-ratio: 7/9;
border-radius: 10px;
overflow: hidden;
box-shadow: 0 12px 52px 0 #87b1291c;
position: relative
}

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

.abt .portrait-frame::after {
content: '';
position: absolute;
inset: 0;
background: linear-gradient(180deg, transparent 60%, #0e120880 100%);
pointer-events: none
}

.abt .expert-label {
font-size: 15px;
line-height: 1.6;
color: #87B129;
letter-spacing: .08em;
text-align: right
}

.abt .expert-name {
font-size: 17px;
line-height: 1.3;
color: #D1E2E4;
text-align: right
}

.abt .img-showcase {
display: flex;
flex-direction: column;
gap: 8px;
margin-top: 8px
}

.abt .img-showcase__item {
width: 100%;
height: 120px;
border-radius: 4px;
overflow: hidden;
box-shadow: 0 1px 6px 0 #87b12912
}

.abt .img-showcase__item img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
transition: transform .55s cubic-bezier(0.22, 1, 0.36, 1)
}

.abt .img-showcase__item:hover img {
transform: scale(1.05)
}

.abt .vals-sec {
position: relative;
z-index: 1;
background: linear-gradient(167deg, #0e1208 0%, #1a2a08 38%, #2a1a2e 70%, #0e1208 100%);
border-top: 1px solid #d8b4d91f
}

.abt .vals-sec__wrap {
max-width: 1600px;
margin: 0 auto;
padding: 64px 32px
}

.abt .vals-sec__top {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 32px;
margin-bottom: 32px
}

.abt .vals-sec__h2 {
font-size: 36px;
line-height: 1.3;
color: #D1E2E4;
flex: 0 0 auto;
margin: 0;
max-width: 360px
}

.abt .vals-sec__desc {
flex: 1 1 0;
font-size: 17px;
line-height: 1.9;
color: #d1e2e4c7;
text-align: justify
}

.abt .pros-cons {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 32px;
margin-bottom: 32px
}

.abt .pros-cons__col {
background: #0e12088c;
border: 1px solid #87b1291f;
border-radius: 6px;
padding: 32px;
box-shadow: 0 4px 25px 0 #87b1291c
}

.abt .pros-cons__col--alt {
border-color: #d8b4d924;
box-shadow: 0 4px 25px 0 #d8b4d914
}

.abt .pros-cons__heading {
font-size: 17px;
line-height: 1.3;
letter-spacing: .08em;
text-transform: uppercase;
margin: 0 0 16px
}

.abt .pros-cons__heading--pro {
color: #87B129
}

.abt .pros-cons__heading--con {
color: #D8B4D9
}

.abt .pros-cons__list {
list-style: none;
padding: 0;
margin: 0
}

.abt .pros-cons__list li {
font-size: 15px;
line-height: 1.6;
color: #d1e2e4cc;
padding: 8px 0;
border-bottom: 1px solid #87b1291a;
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 8px
}

.abt .pros-cons__col--alt .pros-cons__list li {
border-bottom-color: #d8b4d91a
}

.abt .pros-cons__list li:last-child {
border-bottom: none
}

.abt .ind-pro {
width: 8px;
height: 8px;
border-radius: 2px;
background: #87B129;
flex-shrink: 0;
margin-top: 6px
}

.abt .ind-con {
width: 8px;
height: 8px;
border-radius: 2px;
background: #D8B4D9;
flex-shrink: 0;
margin-top: 6px
}

.abt .img-grid {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 8px
}

.abt .img-grid__item {
border-radius: 4px;
overflow: hidden;
position: relative;
box-shadow: 0 1px 6px 0 #87b12912
}

.abt .img-grid__item--fold {
cursor: default
}

.abt .img-grid__item--fold::after {
content: '';
position: absolute;
bottom: 0;
right: 0;
width: 0;
height: 0;
border-style: solid;
border-width: 0 0 32px 32px;
border-color: transparent transparent #0e1208;
transition: border-width .5s cubic-bezier(0.22, 1, 0.36, 1);
z-index: 2
}

.abt .img-grid__item--fold:hover::after {
border-width: 0 0 56px 56px
}

.abt .img-grid__item img {
width: 100%;
height: 180px;
object-fit: cover;
display: block;
transition: transform .6s cubic-bezier(0.22, 1, 0.36, 1)
}

.abt .img-grid__item:hover img {
transform: scale(1.06)
}

@media (max-width: 1024px) {
.abt .pg-lead__h1 {
font-size: 48px
}

.abt .pg-lead__inner {
flex-direction: column;
align-items: flex-start
}

.abt .pg-lead__num {
text-align: left
}

.abt .story-sec__wrap {
grid-template-columns: 1fr 1fr
}

.abt .story-sec__lead {
grid-column: 1 / 2
}

.abt .story-sec__portrait-col {
grid-column: 2;
grid-row: 1
}

.abt .story-sec__body {
grid-column: 1 / 3
}

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

@media (max-width: 768px) {
.abt .pg-lead {
padding: 64px 16px 32px
}

.abt .pg-lead__h1 {
font-size: 36px
}

.abt .pg-lead__stmt {
font-size: 17px
}

.abt .pg-lead__flip-row {
flex-direction: column
}

.abt .story-sec__wrap {
grid-template-columns: 1fr;
padding: 32px 16px
}

.abt .story-sec__lead {
grid-column: 1
}

.abt .story-sec__portrait-col {
grid-column: 1;
grid-row: auto;
align-items: flex-start
}

.abt .story-sec__body {
grid-column: 1;
grid-template-columns: 1fr
}

.abt .portrait-frame {
max-width: 240px
}

.abt .vals-sec__wrap {
padding: 32px 16px
}

.abt .vals-sec__top {
flex-direction: column
}

.abt .pros-cons {
grid-template-columns: 1fr
}

.abt .img-grid {
grid-template-columns: 1fr 1fr
}

.abt .geo-bg {
display: none
}
}

.ctus {
background: #141a0e;
color: #D1E2E4;
overflow-x: clip;
position: relative
}

.ctus .strip {
width: 100%;
height: 6px;
background: linear-gradient(90deg, #87B129 0%, #D8B4D9 55%, #D1E2E4 100%);
position: relative
}

.ctus .strip::after {
content: '';
position: absolute;
inset: 0;
background: linear-gradient(90deg, #87B129 0%, #D8B4D9 55%, #D1E2E4 100%);
opacity: .4;
filter: blur(6px)
}

.ctus .pg-top {
width: 100%;
background: linear-gradient(112deg, #1a2410 0%, #87B129 48%, #D1E2E4 100%);
padding: 32px 0 0;
position: relative;
overflow: hidden
}

.ctus .pg-top__deco {
position: absolute;
top: -40px;
right: -40px;
width: 220px;
height: 220px;
border-radius: 50%;
border: 2px solid #87b12926;
pointer-events: none
}

.ctus .pg-top__deco--sm {
width: 110px;
height: 110px;
top: 20px;
right: 60px;
border-color: #d8b4d91f
}

.ctus .pg-top__inner {
max-width: 1600px;
margin: 0 auto;
padding: 0 32px 32px;
position: relative;
z-index: 1
}

.ctus .pg-top__label {
font-size: 15px;
line-height: 1.3;
letter-spacing: .12em;
text-transform: uppercase;
color: #141a0e;
background: #87B129;
display: inline-block;
padding: 4px 16px;
border-radius: 2px;
margin-bottom: 16px;
font-weight: 700
}

.ctus .pg-top__h1 {
font-size: 68px;
line-height: 1.1;
letter-spacing: -.03em;
text-transform: uppercase;
color: #141a0e;
margin: 0 0 16px;
font-weight: 900;
max-width: 820px
}

.ctus .pg-top__desc {
font-size: 17px;
line-height: 1.6;
color: #1a2410;
max-width: 560px;
margin: 0;
font-weight: 500
}

.ctus .pg-top__fade {
height: 32px;
background: linear-gradient(180deg, transparent 0%, #141a0e 100%)
}

.ctus .body-wrap {
max-width: 1600px;
margin: 0 auto;
padding: 32px;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 32px;
align-items: start
}

.ctus .info-col {
display: flex;
flex-direction: column;
gap: 32px
}

.ctus .info-card {
background: linear-gradient(135deg, #1e2a12 0%, #1a2410 60%, #141a0e 100%);
border: 1px solid #87b1292e;
border-radius: 6px;
padding: 32px;
position: relative;
box-shadow: 0 4px 25px 0 #87b1291c;
overflow: hidden;
transition: border-color .5s cubic-bezier(0.22, 1, 0.36, 1)
}

.ctus .info-card:hover {
border-color: #87b12973
}

.ctus .info-card__tag {
position: absolute;
top: 0;
right: 16px;
background: #87B129;
color: #141a0e;
font-size: 15px;
font-weight: 700;
padding: 4px 8px;
border-radius: 0 0 4px 4px;
letter-spacing: .06em;
text-transform: uppercase
}

.ctus .info-card__stripe {
position: absolute;
left: 0;
top: 0;
bottom: 0;
width: 0;
background: linear-gradient(180deg, #87B129 0%, #D8B4D9 100%);
opacity: .6;
transition: width .5s cubic-bezier(0.22, 1, 0.36, 1);
border-radius: 6px 0 0 6px
}

.ctus .info-card:hover .info-card__stripe {
width: 4px
}

.ctus .info-card__h {
font-size: 26px;
line-height: 1.3;
color: #87B129;
margin: 0 0 16px;
font-weight: 700;
text-transform: uppercase;
letter-spacing: -.01em
}

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

.ctus .info-list__item {
display: flex;
flex-direction: column;
gap: 4px;
padding: 16px 0;
border-bottom: 1px solid #d1e2e41a
}

.ctus .info-list__item:last-child {
border-bottom: none
}

.ctus .info-list__lbl {
font-size: 15px;
line-height: 1.3;
color: #d1e2e480;
letter-spacing: .08em;
text-transform: uppercase
}

.ctus .info-list__val {
font-size: 17px;
line-height: 1.6;
color: #D1E2E4;
font-weight: 500
}

.ctus .info-list__val a {
color: #D1E2E4;
text-decoration: none;
border-bottom: 1px solid #87b12959;
transition: color .45s cubic-bezier(0.22, 1, 0.36, 1), border-color .45s cubic-bezier(0.22, 1, 0.36, 1)
}

.ctus .info-list__val a:hover {
color: #87B129;
border-color: #87B129
}

.ctus .geo-card {
background: #141a0e;
border: 1px solid #d8b4d92e;
border-radius: 6px;
padding: 32px;
position: relative;
overflow: hidden;
box-shadow: 0 1px 6px 0 #87b12912
}

.ctus .geo-card__bg {
position: absolute;
inset: 0;
opacity: .04;
pointer-events: none;
background-image: linear-gradient(60deg, #D8B4D9 25%, transparent 25%), linear-gradient(-60deg, #D8B4D9 25%, transparent 25%), linear-gradient(60deg, transparent 75%, #87B129 75%), linear-gradient(-60deg, transparent 75%, #87B129 75%);
background-size: 20px 36px;
background-position: 0 0, 0 18px, 10px -18px, -10px 0
}

.ctus .geo-card__h {
font-size: 17px;
line-height: 1.3;
color: #d1e2e48c;
text-transform: uppercase;
letter-spacing: .1em;
margin: 0 0 8px;
font-weight: 600;
position: relative;
z-index: 1
}

.ctus .geo-card__addr {
font-size: 26px;
line-height: 1.3;
color: #D1E2E4;
margin: 0;
font-weight: 700;
position: relative;
z-index: 1
}

.ctus .geo-card__city {
color: #87B129
}

.ctus .form-col {
display: flex;
flex-direction: column;
gap: 0
}

.ctus .form-wrap {
background: linear-gradient(160deg, #1e2a12 0%, #141a0e 100%);
border: 1px solid #87b12938;
border-radius: 6px;
padding: 32px;
box-shadow: 0 12px 52px 0 #87b1291c;
position: relative;
overflow: hidden
}

.ctus .form-wrap__tag {
position: absolute;
top: 0;
left: 32px;
background: #D8B4D9;
color: #141a0e;
font-size: 15px;
font-weight: 700;
padding: 4px 8px;
border-radius: 0 0 4px 4px;
letter-spacing: .05em
}

.ctus .form-wrap__h {
font-size: 36px;
line-height: 1.1;
color: #D1E2E4;
text-transform: uppercase;
letter-spacing: -.02em;
margin: 32px 0 8px;
font-weight: 800
}

.ctus .form-wrap__sub {
font-size: 15px;
line-height: 1.6;
color: #d1e2e499;
margin: 0 0 32px
}

.ctus .form-row {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 16px;
margin-bottom: 16px
}

.ctus .form-field {
display: flex;
flex-direction: column;
gap: 8px
}

.ctus .form-field--full {
margin-bottom: 16px
}

.ctus .form-field__lbl {
font-size: 15px;
line-height: 1.3;
color: #d1e2e4b3;
letter-spacing: .06em;
text-transform: uppercase;
font-weight: 600
}

.ctus .form-field__inp {
background: #ffffff0a;
border: 1px solid #87b12940;
border-radius: 4px;
padding: 16px;
font-size: 17px;
line-height: 1.6;
color: #D1E2E4;
outline: none;
transition: border-color .5s cubic-bezier(0.22, 1, 0.36, 1), box-shadow .5s cubic-bezier(0.22, 1, 0.36, 1);
box-shadow: inset 0 1px 4px 0 #87b12912;
width: 100%;
box-sizing: border-box
}

.ctus .form-field__inp::placeholder {
color: #d1e2e44d
}

.ctus .form-field__inp:focus {
border-color: #87B129;
box-shadow: inset 0 1px 4px 0 #87b1291f 0 0 0 2px #87b12921
}

.ctus .radio-grp {
display: flex;
flex-direction: column;
gap: 8px;
margin-bottom: 16px
}

.ctus .radio-grp__lbl {
font-size: 15px;
line-height: 1.3;
color: #d1e2e4b3;
letter-spacing: .06em;
text-transform: uppercase;
font-weight: 600;
margin-bottom: 4px
}

.ctus .radio-opts {
display: flex;
flex-direction: row;
flex-wrap: wrap;
gap: 8px
}

.ctus .radio-opt {
display: flex;
flex-direction: row;
align-items: center;
gap: 8px;
cursor: pointer;
padding: 8px 16px;
border: 1px solid #87b12938;
border-radius: 4px;
background: #ffffff08;
transition: border-color .45s cubic-bezier(0.22, 1, 0.36, 1), background .45s cubic-bezier(0.22, 1, 0.36, 1);
position: relative
}

.ctus .radio-opt:hover {
border-color: #87B129;
background: #87b12914
}

.ctus .radio-opt__inp {
appearance: none;
-webkit-appearance: none;
width: 16px;
height: 16px;
border: 2px solid #87b12980;
border-radius: 50%;
background: transparent;
cursor: pointer;
flex-shrink: 0;
position: relative;
transition: border-color .4s cubic-bezier(0.22, 1, 0.36, 1)
}

.ctus .radio-opt__inp:checked {
border-color: #87B129;
background: #87B129;
box-shadow: 0 0 0 3px #87b1292e
}

.ctus .radio-opt__txt {
font-size: 15px;
line-height: 1.3;
color: #D1E2E4
}

.ctus .privacy-row {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 8px;
margin-bottom: 32px;
padding: 16px;
background: #d8b4d90f;
border-radius: 4px;
border: 1px solid #d8b4d91f
}

.ctus .privacy-row__chk {
appearance: none;
-webkit-appearance: none;
width: 18px;
height: 18px;
border: 2px solid #d8b4d980;
border-radius: 2px;
background: transparent;
cursor: pointer;
flex-shrink: 0;
margin-top: 2px;
transition: border-color .4s cubic-bezier(0.22, 1, 0.36, 1), background .4s cubic-bezier(0.22, 1, 0.36, 1);
position: relative
}

.ctus .privacy-row__chk:checked {
background: #D8B4D9;
border-color: #D8B4D9
}

.ctus .privacy-row__txt {
font-size: 15px;
line-height: 1.6;
color: #d1e2e4a6
}

.ctus .privacy-row__txt a {
color: #D8B4D9;
text-decoration: none;
border-bottom: 1px solid #d8b4d966;
transition: color .45s cubic-bezier(0.22, 1, 0.36, 1)
}

.ctus .privacy-row__txt a:hover {
color: #D1E2E4
}

.ctus .btn-submit {
display: inline-flex;
flex-direction: row;
align-items: center;
gap: 8px;
background: #87B129;
color: #141a0e;
font-size: 17px;
line-height: 1.3;
font-weight: 800;
letter-spacing: .05em;
text-transform: uppercase;
padding: 16px 32px;
border: 2px solid #87B129;
border-radius: 4px;
cursor: pointer;
position: relative;
transition: background .5s cubic-bezier(0.22, 1, 0.36, 1), color .5s cubic-bezier(0.22, 1, 0.36, 1), box-shadow .5s cubic-bezier(0.22, 1, 0.36, 1);
box-shadow: 0 4px 25px 0 #87b1291c;
overflow: hidden
}

.ctus .btn-submit::before {
content: '';
position: absolute;
inset: 4px;
border: 1px solid #141a0e66;
border-radius: 2px;
opacity: 0;
transition: opacity .5s cubic-bezier(0.22, 1, 0.36, 1)
}

.ctus .btn-submit:hover {
background: #141a0e;
color: #87B129;
box-shadow: 0 12px 52px 0 #87b1291c;
border-color: #87B129
}

.ctus .btn-submit:hover::before {
opacity: 1;
border-color: #87b12980
}

.ctus .btn-submit:focus {
outline: 2px solid #87B129;
outline-offset: 3px
}

.ctus .btn-submit:active {
transform: translateY(1px)
}

.ctus .divider-fade {
height: 32px;
background: linear-gradient(180deg, #87b12912 0%, transparent 100%);
margin: 0 32px
}

@media (max-width: 900px) {
.ctus .pg-top__h1 {
font-size: 36px
}

.ctus .body-wrap {
grid-template-columns: 1fr;
padding: 16px;
gap: 16px
}

.ctus .form-row {
grid-template-columns: 1fr
}

.ctus .pg-top__inner {
padding: 0 16px 32px
}

.ctus .radio-opts {
flex-direction: column
}

.ctus .divider-fade {
margin: 0 16px
}
}

@media (max-width: 480px) {
.ctus .pg-top__h1 {
font-size: 26px
}

.ctus .form-wrap {
padding: 16px;
padding-top: 32px
}

.ctus .info-card {
padding: 16px
}

.ctus .geo-card {
padding: 16px
}
}

.fst {
background: #111418;
color: #D1E2E4;
overflow-x: clip
}

.fst .pg-wrap {
max-width: 1600px;
margin-left: auto;
margin-right: auto;
padding-left: 32px;
padding-right: 32px
}

.fst ::selection {
background: #87B129;
color: #111418
}

.fst .lbl {
font-size: 15px;
letter-spacing: .12em;
text-transform: uppercase;
color: #87B129;
line-height: 1.3
}

.fst .hdg--xl {
font-size: 68px;
line-height: 1.1;
letter-spacing: -.03em;
text-transform: uppercase;
color: #D1E2E4
}

.fst .hdg--md {
font-size: 36px;
line-height: 1.1;
letter-spacing: -.02em;
color: #D1E2E4
}

.fst .hdg--sm {
font-size: 26px;
line-height: 1.3;
color: #D1E2E4
}

.fst .body-t {
font-size: 17px;
line-height: 1.6;
color: #b8cfd2
}

.fst .body-t--sm {
font-size: 15px;
line-height: 1.6;
color: #9ab5b9
}

.fst .ttl-blk {
position: relative;
padding-top: 96px;
padding-bottom: 80px;
background: #0d1014
}

.fst .ttl-blk__bg {
position: absolute;
inset: 0;
overflow: hidden;
border-radius: 0
}

.fst .ttl-blk__bg-img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
filter: brightness(0.28) saturate(0.6)
}

.fst .ttl-blk__grain {
position: absolute;
inset: 0;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)' opacity='0.08'/%3E%3C/svg%3E");
background-size: 200px 200px;
opacity: .6;
pointer-events: none
}

.fst .ttl-blk__fade {
position: absolute;
top: 0;
left: 0;
right: 0;
height: 40%;
background: linear-gradient(to bottom, #0d1014 0%, transparent 100%);
pointer-events: none
}

.fst .ttl-blk__body {
position: relative;
z-index: 1;
display: flex;
flex-direction: column;
gap: 32px;
max-width: 900px
}

.fst .ttl-blk__split {
overflow: hidden
}

.fst .ttl-blk__split-inner {
animation: splitOpen .7s cubic-bezier(0.22, 1, 0.36, 1) forwards
}

@keyframes splitOpen {
from {
transform: scaleX(0.6);
opacity: 0;
letter-spacing: .3em
}

to {
transform: scaleX(1);
opacity: 1;
letter-spacing: -.03em
}
}

.fst .ttl-blk__sub {
font-size: 17px;
line-height: 1.6;
color: #b8cfd2;
max-width: 560px
}

.fst .ttl-blk__badge {
display: inline-flex;
align-items: center;
gap: 8px;
border: 1px solid #87b12959;
border-radius: 4px;
padding: 8px 16px;
font-size: 15px;
color: #87B129;
background: #87b1290f;
width: fit-content
}

.fst .ttl-blk__dot {
width: 6px;
height: 6px;
border-radius: 2px;
background: #87B129;
display: inline-block;
flex-shrink: 0
}

.fst .ev-sec {
padding-top: 80px;
padding-bottom: 80px;
background: #141820;
position: relative
}

.fst .ev-sec__divider {
position: absolute;
bottom: 0;
right: 0;
width: 0;
height: 0;
border-style: solid;
border-width: 0 0 48px 200px;
border-color: transparent transparent #111418
}

.fst .ev-sec__grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 32px;
align-items: start
}

.fst .ev-sec__left {
display: flex;
flex-direction: column;
gap: 32px
}

.fst .ev-sec__right {
display: flex;
flex-direction: column;
gap: 16px
}

.fst .ev-sec__img-wrap {
border-radius: 6px;
overflow: hidden;
box-shadow: 0 4px 25px 0 #87b1291c
}

.fst .ev-sec__img {
width: 100%;
height: 320px;
object-fit: cover;
object-position: center;
display: block;
transition: transform .6s cubic-bezier(0.22, 1, 0.36, 1)
}

.fst .ev-sec__img-wrap:hover .ev-sec__img {
transform: scale(1.03)
}

.fst .ev-metrics {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 16px
}

.fst .ev-metric {
background: #87b12912;
border: 1px solid #87b12933;
border-radius: 6px;
padding: 16px;
display: flex;
flex-direction: column;
gap: 8px
}

.fst .ev-metric__num {
font-size: 36px;
line-height: 1.1;
color: #87B129;
letter-spacing: -.02em
}

.fst .ev-metric__desc {
font-size: 15px;
line-height: 1.3;
color: #9ab5b9
}

.fst .ev-sec__list {
display: flex;
flex-direction: column;
gap: 0
}

.fst .ev-sec__item {
padding: 16px 0;
border-bottom: 1px solid #d1e2e41f;
font-size: 17px;
line-height: 1.6;
color: #b8cfd2
}

.fst .ev-sec__item:first-child {
border-top: 1px solid #d1e2e41f
}

.fst .fit-sec {
padding-top: 96px;
padding-bottom: 96px;
background: #111418;
position: relative
}

.fst .fit-sec__layout {
display: grid;
grid-template-columns: 5fr 7fr;
gap: 32px;
align-items: center
}

.fst .fit-sec__portrait-wrap {
border-radius: 6px;
overflow: hidden;
box-shadow: 0 12px 52px 0 #87b1291c 0 4px 25px 0 #87b1291c;
aspect-ratio: 7/9
}

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

.fst .fit-sec__text {
display: flex;
flex-direction: column;
gap: 32px
}

.fst .fit-sec__cards {
display: flex;
flex-direction: column;
gap: 16px
}

.fst .fit-card {
background: #d1e2e40a;
border: 1px solid #d1e2e41a;
border-radius: 6px;
padding: 16px;
display: flex;
flex-direction: column;
gap: 8px;
transition: border-color .5s ease-in-out, background .5s ease-in-out
}

.fst .fit-card:hover {
border-color: #87b12966;
background: #87b1290f
}

.fst .fit-card__tag {
font-size: 15px;
color: #87B129;
letter-spacing: .08em;
text-transform: uppercase
}

.fst .fit-card__body {
font-size: 17px;
line-height: 1.6;
color: #b8cfd2
}

.fst .patt-sec {
padding-top: 80px;
padding-bottom: 80px;
background: #0e1117;
position: relative
}

.fst .patt-sec__top {
display: flex;
flex-direction: column;
gap: 16px;
margin-bottom: 32px;
max-width: 700px
}

.fst .patt-sec__bg-accent {
position: absolute;
top: 0;
right: 0;
width: 400px;
height: 100%;
background: linear-gradient(135deg, transparent 60%, #87b1290a 100%);
pointer-events: none
}

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

.fst .patt-item {
display: flex;
flex-direction: column;
gap: 16px;
padding: 32px 16px;
border-top: 2px solid #87b1294d;
border-right: 1px solid #d1e2e412;
border-bottom: 1px solid #d1e2e412;
border-left: 1px solid #d1e2e412;
border-radius: 4px;
background: #d1e2e405
}

.fst .patt-item__icon {
width: 32px;
height: 32px;
flex-shrink: 0
}

.fst .patt-item__hdg {
font-size: 17px;
line-height: 1.3;
color: #D1E2E4
}

.fst .patt-item__body {
font-size: 15px;
line-height: 1.6;
color: #9ab5b9;
text-align: justify
}

.fst .patt-sec__img-row {
margin-top: 32px;
border-radius: 6px;
overflow: hidden;
position: relative
}

.fst .patt-sec__img {
width: 100%;
height: 240px;
object-fit: cover;
object-position: center;
display: block;
filter: brightness(0.5) saturate(0.7)
}

.fst .patt-sec__img-overlay {
position: absolute;
inset: 0;
background: linear-gradient(90deg, #0e1117d9 0%, transparent 50%, #0e1117d9 100%);
display: flex;
align-items: center;
padding: 32px
}

.fst .patt-sec__quote {
font-size: 26px;
line-height: 1.3;
color: #D1E2E4;
max-width: 540px
}

.fst .scope-sec {
padding-top: 96px;
padding-bottom: 96px;
background: #141820;
position: relative
}

.fst .scope-sec__layout {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 32px;
align-items: start
}

.fst .scope-sec__text {
display: flex;
flex-direction: column;
gap: 32px
}

.fst .scope-sec__img-wrap {
border-radius: 6px;
overflow: hidden;
box-shadow: 0 1px 6px 0 #87b12912;
position: relative
}

.fst .scope-sec__img {
width: 100%;
height: 480px;
object-fit: cover;
object-position: center;
display: block
}

.fst .scope-sec__img-overlay {
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 40%;
background: linear-gradient(to top, #141820 0%, transparent 100%)
}

.fst .scope-list {
display: flex;
flex-direction: column;
gap: 0
}

.fst .scope-list__item {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 16px;
padding: 16px 0;
border-bottom: 1px solid #d1e2e41a
}

.fst .scope-list__item:first-child {
border-top: 1px solid #d1e2e41a
}

.fst .scope-list__marker {
width: 20px;
height: 20px;
flex-shrink: 0;
margin-top: 2px
}

.fst .scope-list__txt {
font-size: 17px;
line-height: 1.6;
color: #b8cfd2;
text-align: justify
}

.fst .scope-sec__note {
font-size: 15px;
line-height: 1.6;
color: #9ab5b9;
padding: 16px;
border-left: 3px solid #87b12980;
border-right: 1px solid #87b1291a;
border-top: 1px solid #87b1291a;
border-bottom: 1px solid #87b1291a;
border-radius: 4px;
background: #87b1290a
}

.fst .obj-sec {
padding-top: 80px;
padding-bottom: 80px;
background: #111418
}

.fst .obj-sec__layout {
display: flex;
flex-direction: column;
gap: 32px;
max-width: 900px;
margin-left: auto;
margin-right: auto;
text-align: left
}

.fst .obj-sec__q {
font-size: 36px;
line-height: 1.3;
color: #D8B4D9;
letter-spacing: -.01em
}

.fst .obj-sec__body {
display: flex;
flex-direction: column;
gap: 16px
}

.fst .obj-sec__link {
color: #87B129;
text-decoration: none;
border-bottom: 1px solid #87b12959;
transition: border-color .5s ease-in-out, color .5s ease-in-out
}

.fst .obj-sec__link:hover {
color: #a8d43e;
border-bottom-color: #87B129
}

.fst .obj-sec__divider {
width: 80px;
height: 2px;
background: linear-gradient(90deg, #87B129 0%, #D8B4D9 100%);
border-radius: 2px
}

.fst .diff-sec {
padding-top: 96px;
padding-bottom: 96px;
background: #0d1014;
position: relative
}

.fst .diff-sec__bg {
position: absolute;
inset: 0;
overflow: hidden
}

.fst .diff-sec__bg-img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
filter: brightness(0.15) saturate(0.4)
}

.fst .diff-sec__overlay {
position: absolute;
inset: 0;
background: linear-gradient(160deg, #0d1014 0%, #0d1014b3 50%, #87b12914 100%);
pointer-events: none
}

.fst .diff-sec__body {
position: relative;
z-index: 1;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 32px;
align-items: start
}

.fst .diff-sec__intro {
display: flex;
flex-direction: column;
gap: 32px
}

.fst .diff-pts {
display: flex;
flex-direction: column;
gap: 16px
}

.fst .diff-pt {
display: flex;
flex-direction: column;
gap: 8px;
padding: 32px;
background: #0d1014b3;
border: 1px solid #d1e2e41a;
border-radius: 6px;
box-shadow: 0 4px 25px 0 #87b1291c;
transition: border-color .6s cubic-bezier(0.22, 1, 0.36, 1)
}

.fst .diff-pt:hover {
border-color: #87b12973
}

.fst .diff-pt__num {
font-size: 68px;
line-height: 1.1;
color: #87b12926;
letter-spacing: -.04em;
margin-bottom: -16px
}

.fst .diff-pt__hdg {
font-size: 26px;
line-height: 1.3;
color: #D1E2E4
}

.fst .diff-pt__body {
font-size: 17px;
line-height: 1.6;
color: #9ab5b9;
text-align: justify
}

.fst .char-hover {
display: inline-flex;
flex-wrap: wrap
}

.fst .char-hover__c {
display: inline-block;
transition: color .09s ease-in-out;
cursor: default
}

.fst .char-hover:hover .char-hover__c:nth-child(1) {
color: #87B129;
transition-delay: 0s
}

.fst .char-hover:hover .char-hover__c:nth-child(2) {
color: #87B129;
transition-delay: .04s
}

.fst .char-hover:hover .char-hover__c:nth-child(3) {
color: #87B129;
transition-delay: .08s
}

.fst .char-hover:hover .char-hover__c:nth-child(4) {
color: #87B129;
transition-delay: .12s
}

.fst .char-hover:hover .char-hover__c:nth-child(5) {
color: #87B129;
transition-delay: .16s
}

.fst .char-hover:hover .char-hover__c:nth-child(6) {
color: #87B129;
transition-delay: .2s
}

.fst .char-hover:hover .char-hover__c:nth-child(7) {
color: #D8B4D9;
transition-delay: .24s
}

.fst .char-hover:hover .char-hover__c:nth-child(8) {
color: #D8B4D9;
transition-delay: .28s
}

.fst .char-hover:hover .char-hover__c:nth-child(9) {
color: #D8B4D9;
transition-delay: .32s
}

.fst .char-hover:hover .char-hover__c:nth-child(10) {
color: #D8B4D9;
transition-delay: .36s
}

.fst .char-hover:hover .char-hover__c:nth-child(11) {
color: #D8B4D9;
transition-delay: .4s
}

.fst .char-hover:hover .char-hover__c:nth-child(12) {
color: #D8B4D9;
transition-delay: .44s
}

@media (max-width: 1024px) {
.fst .hdg--xl {
font-size: 52px
}

.fst .ev-sec__grid {
grid-template-columns: 1fr
}

.fst .fit-sec__layout {
grid-template-columns: 1fr 1fr
}

.fst .patt-grid {
grid-template-columns: 1fr 1fr
}

.fst .diff-sec__body {
grid-template-columns: 1fr
}
}

@media (max-width: 768px) {
.fst .hdg--xl {
font-size: 36px
}

.fst .hdg--md {
font-size: 26px
}

.fst .ttl-blk {
padding-top: 64px;
padding-bottom: 64px
}

.fst .fit-sec__layout {
grid-template-columns: 1fr
}

.fst .scope-sec__layout {
grid-template-columns: 1fr
}

.fst .patt-grid {
grid-template-columns: 1fr
}

.fst .ev-metrics {
grid-template-columns: 1fr 1fr
}

.fst .pg-wrap {
padding-left: 16px;
padding-right: 16px
}

.fst .diff-pt__num {
font-size: 52px
}
}

.succ-page {
min-height: 80vh;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
background: #111614;
padding: 32px 16px
}

.succ-page .succ-card {
max-width: 560px;
width: 100%;
background: #161d14;
border: 1px solid #87b1292e;
border-radius: 6px;
padding: 32px;
box-shadow: 0 4px 25px 0 #87b1291c 0 12px 52px 0 #87b1291c;
display: flex;
flex-direction: column;
align-items: flex-start;
gap: 16px
}

.succ-page .succ-card__icon {
width: 52px;
height: 52px;
border-radius: 4px;
background: #87b1291f;
border: 1px solid #87b1294d;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0
}

.succ-page .succ-card__icon svg {
width: 26px;
height: 26px
}

.succ-page .succ-card__heading {
font-size: 36px;
line-height: 1.1;
letter-spacing: -.02em;
color: #87B129;
margin: 0;
text-transform: uppercase
}

.succ-page .succ-card__sub {
font-size: 17px;
line-height: 1.6;
color: #D1E2E4;
margin: 0;
text-align: left
}

.succ-page .succ-card__divider {
width: 100%;
height: 1px;
background: #d1e2e41a
}

.succ-page .succ-card__detail {
font-size: 15px;
line-height: 1.6;
color: #d1e2e499;
margin: 0;
text-align: left
}

.succ-page .succ-card__action {
display: inline-block;
margin-top: 8px;
padding: 16px 32px;
background: #87B129;
color: #111614;
font-size: 15px;
line-height: 1.3;
font-weight: 700;
letter-spacing: .04em;
border-radius: 2px;
text-decoration: none;
border: 2px solid #87B129;
transition: background .5s cubic-bezier(0.22, 1, 0.36, 1), color .5s cubic-bezier(0.22, 1, 0.36, 1), border-color .45s ease-in-out;
position: relative
}

.succ-page .succ-card__action::after {
content: '';
position: absolute;
inset: 3px;
border: 1px solid transparent;
border-radius: 2px;
transition: border-color .45s cubic-bezier(0.22, 1, 0.36, 1)
}

.succ-page .succ-card__action:hover {
background: transparent;
color: #87B129;
border-color: #87B129
}

.succ-page .succ-card__action:hover::after {
border-color: #87b12966
}

.succ-page .succ-card__action:focus-visible {
outline: 2px solid #D8B4D9;
outline-offset: 4px
}

.succ-page .succ-card__brand {
font-size: 15px;
line-height: 1.3;
color: #d8b4d980;
margin: 0;
letter-spacing: .06em;
text-transform: uppercase
}