@import "https://fonts.googleapis.com/css2?family=Nunito:ital,wght@0,400;1,400;0,700;1,700&display=swap";

::before,
::after {
content: none;
box-sizing: inherit
}

* {
box-sizing: border-box
}

body {
margin: 0;
overscroll-behavior: contain;
overflow-x: hidden;
font-family: 'Nunito', sans-serif;
background: #0d0d0d;
color: #f4f4f4
}

.top-bar__shell {
position: relative;
background: linear-gradient(135deg, #1a1a1a 0%, #0f0f0f 100%);
padding: 16px 28px;
box-shadow: 1px 3px 2px 1px #51aeb814
}

.top-bar__hold {
max-width: 1170px;
margin: 0 auto;
display: flex;
align-items: center;
justify-content: space-between;
gap: 28px;
flex-wrap: wrap
}

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

.brand__circle {
width: 62px;
height: 62px;
background: #F9FAFB;
border-radius: 36px;
display: flex;
align-items: center;
justify-content: center;
box-shadow: 1px 7px 20px 1px #51aeb814;
flex-shrink: 0
}

.brand__mark {
width: 58px;
height: 58px;
object-fit: contain
}

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

.brand__firm-name {
font-size: 28px;
line-height: 1.15;
font-weight: 700;
color: #F9FAFB;
margin: 0
}

.brand__location-text {
font-size: 13px;
line-height: 1.4;
color: #A5D1D6;
display: flex;
align-items: center;
gap: 8px
}

.brand__location-icon {
width: 16px;
height: 16px;
fill: #51AEB8
}

.contact-bar__hold {
display: flex;
align-items: center;
gap: 28px;
flex-wrap: wrap
}

.contact-item__link {
display: flex;
align-items: center;
gap: 8px;
font-size: 13px;
line-height: 1.4;
color: #A5D1D6;
text-decoration: none;
transition: color .6s ease
}

.contact-item__link:hover {
color: #51AEB8
}

.contact-item__link:focus {
outline: none;
box-shadow: 0 0 0 4px #51aeb84d;
border-radius: 4px
}

.contact-item__ico {
width: 18px;
height: 18px;
fill: #51AEB8;
flex-shrink: 0
}

.nav-bar__shell {
background: #151515;
padding: 16px 28px;
border-top: 1px solid #51aeb826;
box-shadow: inset 0 6px 10px #0006
}

.nav-bar__hold {
max-width: 1170px;
margin: 0 auto
}

.primary-menu__list {
list-style: none;
margin: 0;
padding: 0;
display: flex;
align-items: center;
gap: 56px;
flex-wrap: wrap
}

.primary-menu__item {
position: relative
}

.primary-menu__anchor {
display: block;
font-size: 13px;
line-height: 1.4;
font-weight: 700;
color: #F9FAFB;
text-decoration: none;
text-transform: uppercase;
letter-spacing: .05em;
padding: 8px 16px;
border-radius: 4px;
transition: background .7s cubic-bezier(0.25, 0.46, 0.45, 0.94), color .5s ease;
position: relative;
overflow: hidden
}

.primary-menu__anchor::before {
content: '';
position: absolute;
bottom: 0;
left: 0;
width: 100%;
height: 0;
background: linear-gradient(180deg, #51AEB8 0%, #A5D1D6 100%);
transition: height .6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
z-index: -1
}

.primary-menu__anchor:hover::before {
height: 100%
}

.primary-menu__anchor:hover {
color: #0d0d0d
}

.primary-menu__anchor:focus {
outline: none;
box-shadow: 0 0 0 4px #a5d1d666
}

@media (max-width: 768px) {
.top-bar__hold {
flex-direction: column;
align-items: flex-start;
gap: 16px
}

.contact-bar__hold {
flex-direction: column;
align-items: flex-start;
gap: 16px;
width: 100%
}

.primary-menu__list {
flex-direction: column;
align-items: flex-start;
gap: 16px
}

.brand__location-text {
flex-wrap: wrap
}
}

@media (max-width: 640px) {
.top-bar__shell {
padding: 16px
}

.nav-bar__shell {
padding: 16px
}

.brand__firm-name {
font-size: 28px
}

.primary-menu__list {
gap: 8px
}
}

.base-floor__shell {
background: linear-gradient(180deg, #0f0f0f 0%, #1a1a1a 100%);
padding: 96px 28px 28px;
border-top: 2px solid #51aeb833;
position: relative
}

.base-floor__shell::before {
content: '';
position: absolute;
top: 0;
left: 50%;
transform: translateX(-50%);
width: 80%;
height: 1px;
background: linear-gradient(90deg, transparent 0%, #51AEB8 50%, transparent 100%)
}

.base-floor__hold {
max-width: 1170px;
margin: 0 auto
}

.base-floor__top-row {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
gap: 56px;
margin-bottom: 56px
}

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

.floor-brand__circle {
width: 68px;
height: 68px;
background: #F9FAFB;
border-radius: 36px;
display: flex;
align-items: center;
justify-content: center;
box-shadow: 1px 9px 44px 1px #a5d1d61a
}

.floor-brand__mark {
width: 64px;
height: 64px;
object-fit: contain
}

.floor-brand__tagline {
font-size: 13px;
line-height: 1.6;
color: #A5D1D6;
margin: 0
}

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

.floor-nav__heading {
font-size: 13px;
line-height: 1.4;
font-weight: 700;
color: #51AEB8;
text-transform: uppercase;
letter-spacing: .05em;
margin: 0
}

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

.floor-nav__link {
font-size: 13px;
line-height: 1.6;
color: #F9FAFB;
text-decoration: none;
transition: color .5s ease, padding-left .6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
display: inline-block
}

.floor-nav__link:hover {
color: #A5D1D6;
padding-left: 8px
}

.floor-nav__link:focus {
outline: none;
box-shadow: 0 0 0 4px #51aeb84d;
border-radius: 4px
}

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

.floor-contact__heading {
font-size: 13px;
line-height: 1.4;
font-weight: 700;
color: #51AEB8;
text-transform: uppercase;
letter-spacing: .05em;
margin: 0
}

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

.floor-contact__link {
display: flex;
align-items: center;
gap: 8px;
font-size: 13px;
line-height: 1.6;
color: #F9FAFB;
text-decoration: none;
transition: color .5s ease
}

.floor-contact__link:hover {
color: #A5D1D6
}

.floor-contact__link:focus {
outline: none;
box-shadow: 0 0 0 4px #51aeb84d;
border-radius: 4px
}

.floor-contact__ico {
width: 16px;
height: 16px;
fill: #51AEB8;
flex-shrink: 0
}

.floor-divider__line {
width: 100%;
height: 1px;
background: linear-gradient(90deg, transparent 0%, #51aeb84d 20%, #51aeb84d 80%, transparent 100%);
margin: 56px 0
}

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

.copyright__text {
font-size: 13px;
line-height: 1.4;
color: #A5D1D6;
margin: 0
}

.utility-links__list {
list-style: none;
margin: 0;
padding: 0;
display: flex;
align-items: center;
gap: 28px;
flex-wrap: wrap
}

.utility-links__anchor {
font-size: 13px;
line-height: 1.4;
color: #F9FAFB;
text-decoration: none;
transition: color .5s ease;
position: relative
}

.utility-links__anchor::after {
content: '';
position: absolute;
bottom: -2px;
left: 0;
width: 0;
height: 1px;
background: #51AEB8;
transition: width .7s cubic-bezier(0.25, 0.46, 0.45, 0.94)
}

.utility-links__anchor:hover::after {
width: 100%
}

.utility-links__anchor:hover {
color: #51AEB8
}

.utility-links__anchor:focus {
outline: none;
box-shadow: 0 0 0 4px #a5d1d64d;
border-radius: 4px
}

.manage-prefs__trigger {
font-size: 13px;
line-height: 1.4;
color: #A5D1D6;
background: none;
border: none;
cursor: pointer;
padding: 0;
text-decoration: underline;
transition: color .5s ease
}

.manage-prefs__trigger:hover {
color: #51AEB8
}

.manage-prefs__trigger:focus {
outline: none;
box-shadow: 0 0 0 4px #51aeb84d;
border-radius: 4px
}

@media (max-width: 1024px) {
.base-floor__top-row {
grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
gap: 28px
}
}

@media (max-width: 768px) {
.base-floor__shell {
padding: 56px 16px 28px
}

.base-floor__top-row {
grid-template-columns: 1fr;
gap: 28px;
margin-bottom: 28px
}

.floor-divider__line {
margin: 28px 0
}

.base-floor__bottom-row {
flex-direction: column;
align-items: flex-start;
gap: 16px
}

.utility-links__list {
flex-direction: column;
align-items: flex-start;
gap: 8px
}
}

@media (max-width: 640px) {
.base-floor__shell {
padding: 56px 16px 16px
}
}

.policy-layout {
max-width: 1170px;
margin: 0 auto;
padding: 56px 16px;
background: #0d0d0d;
color: #f0f0f0
}

@media (min-width: 768px) {
.policy-layout {
padding: 96px 28px
}
}

.policy-layout h1 {
font-size: 66px;
line-height: 1.15;
margin-bottom: 56px;
color: #51AEB8;
text-transform: uppercase;
letter-spacing: .05em
}

@media (max-width: 767px) {
.policy-layout h1 {
font-size: 38px
}
}

.policy-layout h2 {
font-size: 38px;
line-height: 1.4;
margin-top: 96px;
margin-bottom: 28px;
color: #A5D1D6;
text-transform: uppercase;
letter-spacing: .03em
}

@media (max-width: 767px) {
.policy-layout h2 {
font-size: 28px;
margin-top: 56px
}
}

.policy-layout h3 {
font-size: 28px;
line-height: 1.4;
margin-top: 56px;
margin-bottom: 16px;
color: #A5D1D6
}

@media (max-width: 767px) {
.policy-layout h3 {
font-size: 28px;
margin-top: 28px
}
}

.policy-layout p {
font-size: 13px;
line-height: 1.6;
margin-bottom: 16px;
color: #e8e8e8
}

.policy-layout ul,
.policy-layout ol {
margin-bottom: 28px;
padding-left: 28px
}

.policy-layout ul {
list-style-type: none;
padding-left: 0
}

.policy-layout ul li {
position: relative;
padding-left: 28px;
margin-bottom: 8px;
font-size: 13px;
line-height: 1.6;
color: #e8e8e8
}

.policy-layout ul li::before {
content: '';
position: absolute;
left: 0;
top: 10px;
width: 6px;
height: 6px;
background: #51AEB8;
border-radius: 4px
}

.policy-layout ol {
counter-reset: policy-counter
}

.policy-layout ol li {
position: relative;
padding-left: 28px;
margin-bottom: 8px;
font-size: 13px;
line-height: 1.6;
color: #e8e8e8;
counter-increment: policy-counter
}

.policy-layout ol li::before {
content: counter(policy-counter) ".";
position: absolute;
left: 0;
color: #51AEB8;
font-weight: 600
}

.policy-layout strong,
.policy-layout b {
font-weight: 700;
color: #fff
}

.policy-layout em,
.policy-layout i {
font-style: italic;
color: #A5D1D6
}

.policy-layout a {
color: #51AEB8;
text-decoration: none;
border-bottom: 1px solid #51aeb84d;
transition: border-color .6s cubic-bezier(0.25, 0.46, 0.45, 0.94), color .6s cubic-bezier(0.25, 0.46, 0.45, 0.94)
}

.policy-layout a:hover {
color: #A5D1D6;
border-bottom-color: #A5D1D6
}

.policy-layout hr {
border: none;
height: 1px;
background: linear-gradient(to right, #51aeb800, #51aeb866, #51aeb800);
margin: 56px 0
}

@media (max-width: 767px) {
.policy-layout hr {
margin: 28px 0
}
}

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

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

.testimonial {
background: #0d0d0d;
color: #e8e8e8;
min-height: 100vh
}

.testimonial__open-block {
background: linear-gradient(263deg, #51AEB8 0%, #51AEB8 50%, #A5D1D6 50%, #A5D1D6 100%);
padding: 96px 16px;
position: relative;
overflow: hidden
}

.testimonial__open-block::before {
content: '';
position: absolute;
top: 16px;
right: 16px;
width: 8px;
height: 8px;
background: #f9fafb4d;
border-radius: 50%
}

.testimonial__open-block::after {
content: '';
position: absolute;
top: 28px;
right: 56px;
width: 16px;
height: 16px;
background: #f9fafb33;
border-radius: 50%
}

.testimonial__open-decoration {
position: absolute;
bottom: 56px;
right: 96px;
width: 12px;
height: 12px;
background: #f9fafb40;
border-radius: 50%
}

.testimonial__open-inner {
max-width: 1170px;
margin: 0 auto
}

.testimonial__open-heading {
font-size: 66px;
line-height: 1.15;
color: #0d0d0d;
margin: 0 0 28px;
text-transform: uppercase;
letter-spacing: .02em
}

.testimonial__open-tagline {
font-size: 28px;
line-height: 1.4;
color: #1a1a1a;
margin: 0 0 56px;
max-width: 720px
}

.testimonial__open-links {
display: flex;
flex-direction: row;
gap: 28px;
flex-wrap: wrap
}

.testimonial__open-link {
font-size: 13px;
line-height: 1.4;
text-transform: uppercase;
letter-spacing: .05em;
color: #0d0d0d;
text-decoration: none;
padding: 16px 28px;
background: #0d0d0d1a;
border-radius: 4px;
transition: background .65s cubic-bezier(0.25, 0.46, 0.45, 0.94);
position: relative;
overflow: hidden
}

.testimonial__open-link::before {
content: '';
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 0;
background: #0d0d0d;
transition: height .7s ease;
z-index: 0
}

.testimonial__open-link:hover::before {
height: 100%
}

.testimonial__open-link span {
position: relative;
z-index: 1;
transition: color .7s ease
}

.testimonial__open-link:hover span {
color: #F9FAFB
}

.testimonial__open-shape {
position: absolute;
width: 80px;
height: 80px;
border: 2px solid #f9fafb26;
border-radius: 4px;
top: 56px;
left: 56px;
transform: rotate(15deg)
}

.testimonial__open-shape-two {
position: absolute;
width: 120px;
height: 60px;
border: 2px solid #f9fafb1f;
border-radius: 36px;
bottom: 96px;
left: 16px;
transform: rotate(-8deg)
}

.testimonial__voices-section {
background: #1b1b1b;
padding: 96px 16px;
position: relative
}

.testimonial__voices-section::before {
content: '';
position: absolute;
top: -1px;
left: 0;
width: 0;
height: 0;
border-style: solid;
border-width: 28px 0 0 28px;
border-color: transparent transparent transparent #51AEB8
}

.testimonial__voices-pattern {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
opacity: .03;
pointer-events: none;
overflow: hidden
}

.testimonial__voices-pattern::before,
.testimonial__voices-pattern::after {
content: '';
position: absolute;
top: 0;
left: 0;
width: 2px;
height: 400%;
background: linear-gradient(180deg, transparent 0%, #51AEB8 50%, transparent 100%);
transform-origin: top left
}

.testimonial__voices-pattern::before {
transform: rotate(25deg)
}

.testimonial__voices-pattern::after {
transform: rotate(35deg);
left: 96px
}

.testimonial__voices-inner {
max-width: 1170px;
margin: 0 auto;
position: relative;
z-index: 1
}

.testimonial__voices-intro {
margin: 0 0 56px
}

.testimonial__voices-intro p {
font-size: 28px;
line-height: 1.4;
color: #e8e8e8;
margin: 0 0 28px
}

.testimonial__voices-body {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 28px;
column-gap: 56px
}

.testimonial__voices-body p {
font-size: 13px;
line-height: 1.6;
color: #c4c4c4;
margin: 0
}

.testimonial__cards-grid {
display: grid;
grid-template-columns: 1fr;
gap: 56px;
margin: 96px 0 0
}

.testimonial__card {
background: #151515;
border-radius: 4px;
padding: 56px;
box-shadow: 1px 7px 20px 1px #51aeb814;
display: grid;
grid-template-columns: 280px 1fr;
gap: 56px;
align-items: start;
position: relative;
opacity: 0;
animation: testimonial-card-reveal .75s cubic-bezier(0.25, 0.46, 0.45, 0.94) forwards
}

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

.testimonial__card:nth-child(2) {
animation-delay: .25s;
grid-template-columns: 1fr 280px
}

.testimonial__card:nth-child(3) {
animation-delay: .4s
}

@keyframes testimonial-card-reveal {
to {
opacity: 1
}
}

.testimonial__card-visual {
width: 280px;
height: 380px;
border-radius: 4px;
overflow: hidden;
position: relative
}

.testimonial__card:nth-child(2) .testimonial__card-visual {
order: 2
}

.testimonial__card-visual img {
width: 100%;
height: 100%;
object-fit: cover;
opacity: 0;
transition: opacity .6s ease
}

.testimonial__card-visual img.testimonial__img-loaded {
opacity: 1
}

.testimonial__card-content {
display: flex;
flex-direction: column;
gap: 28px
}

.testimonial__card-quote {
font-size: 28px;
line-height: 1.4;
color: #e8e8e8;
margin: 0;
font-style: italic;
position: relative;
padding: 0 0 0 28px
}

.testimonial__card-quote::before {
content: '';
position: absolute;
left: 0;
top: 0;
bottom: 0;
width: 4px;
background: linear-gradient(180deg, #51AEB8 0%, #A5D1D6 100%);
border-radius: 4px
}

.testimonial__card-text {
font-size: 13px;
line-height: 1.6;
color: #c4c4c4;
margin: 0
}

.testimonial__card-meta {
display: flex;
flex-direction: column;
gap: 8px;
padding: 28px 0 0;
border-top: 1px solid #51aeb833
}

.testimonial__card-name {
font-size: 13px;
line-height: 1.4;
color: #51AEB8;
margin: 0;
text-transform: uppercase;
letter-spacing: .05em
}

.testimonial__card-context {
font-size: 13px;
line-height: 1.4;
color: #888;
margin: 0
}

.testimonial__card-rating {
display: flex;
flex-direction: row;
gap: 8px;
margin: 16px 0 0
}

.testimonial__card-star {
width: 16px;
height: 16px;
position: relative
}

.testimonial__card-star svg {
width: 100%;
height: 100%;
fill: #51AEB8
}

.testimonial__features-strip {
display: flex;
flex-direction: row;
justify-content: center;
gap: 56px;
margin: 96px 0 0;
padding: 56px 28px;
background: #51aeb80d;
border-radius: 4px;
flex-wrap: wrap
}

.testimonial__feature-item {
display: flex;
flex-direction: column;
align-items: center;
gap: 16px;
text-align: center
}

.testimonial__feature-icon {
width: 56px;
height: 56px;
border-radius: 50%;
background: linear-gradient(263deg, #51AEB8 0%, #51AEB8 50%, #A5D1D6 50%, #A5D1D6 100%);
display: flex;
align-items: center;
justify-content: center;
position: relative;
transition: transform .6s cubic-bezier(0.25, 0.46, 0.45, 0.94)
}

.testimonial__feature-item:hover .testimonial__feature-icon {
transform: scale(1.1) rotate(5deg)
}

.testimonial__feature-icon svg {
width: 28px;
height: 28px;
fill: #0d0d0d
}

.testimonial__feature-label {
font-size: 13px;
line-height: 1.4;
color: #e8e8e8;
margin: 0;
text-transform: uppercase;
letter-spacing: .05em
}

.testimonial__metric-banner {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 28px;
margin: 96px 0 0
}

.testimonial__metric-box {
background: #0d0d0d;
padding: 56px 28px;
border-radius: 4px;
text-align: center;
position: relative;
overflow: hidden;
transition: transform .55s ease, box-shadow .55s ease
}

.testimonial__metric-box:hover {
transform: translateY(-8px);
box-shadow: 1px 9px 44px 1px #51aeb81a
}

.testimonial__metric-box::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
border: 2px solid transparent;
border-radius: 4px;
transition: border-color .7s cubic-bezier(0.25, 0.46, 0.45, 0.94);
pointer-events: none
}

.testimonial__metric-box:hover::before {
transition-delay: 0s;
transition-delay: .15s;
transition-delay: .3s;
transition-delay: .45s;
border-color: #51AEB8 #51AEB8 #A5D1D6 #A5D1D6
}

.testimonial__metric-value {
font-size: 66px;
line-height: 1.15;
color: #51AEB8;
margin: 0 0 16px;
font-weight: 700
}

.testimonial__metric-desc {
font-size: 13px;
line-height: 1.4;
color: #c4c4c4;
margin: 0;
text-transform: uppercase;
letter-spacing: .05em
}

@media (max-width: 1024px) {
.testimonial__open-heading {
font-size: 38px
}

.testimonial__open-tagline {
font-size: 28px
}

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

.testimonial__card:nth-child(2) {
grid-template-columns: 1fr
}

.testimonial__card-visual {
width: 100%;
height: 320px
}

.testimonial__card:nth-child(2) .testimonial__card-visual {
order: 0
}

.testimonial__metric-banner {
grid-template-columns: 1fr
}

.testimonial__features-strip {
gap: 28px
}
}

@media (max-width: 768px) {
.testimonial__open-block {
padding: 56px 16px
}

.testimonial__open-heading {
font-size: 28px
}

.testimonial__open-tagline {
font-size: 13px
}

.testimonial__open-links {
flex-direction: column;
gap: 16px
}

.testimonial__open-link {
text-align: center
}

.testimonial__voices-section {
padding: 56px 16px
}

.testimonial__voices-intro p {
font-size: 13px
}

.testimonial__voices-body {
grid-template-columns: 1fr;
gap: 16px
}

.testimonial__card {
padding: 16px
}

.testimonial__card-quote {
font-size: 13px;
padding: 0 0 0 16px
}

.testimonial__cards-grid {
gap: 28px;
margin: 56px 0 0
}

.testimonial__card-visual {
display: none
}

.testimonial__features-strip {
flex-direction: column;
gap: 28px;
padding: 28px 16px
}

.testimonial__metric-banner {
margin: 56px 0 0
}

.testimonial__metric-box {
padding: 28px 16px
}

.testimonial__metric-value {
font-size: 38px
}

.testimonial__open-shape,
.testimonial__open-shape-two {
display: none
}
}

@media (max-width: 640px) {
.testimonial__open-heading {
font-size: 28px
}

.testimonial__card-quote {
font-size: 13px
}
}

.abt {
background: #0a0a0a;
color: #e8e8e8;
overflow-x: clip
}

.abt__intro {
background: linear-gradient(263deg, #51AEB8 0%, #51AEB8 50%, #A5D1D6 50%, #A5D1D6 100%);
position: relative;
padding-top: 56px;
padding-bottom: 96px;
overflow: hidden
}

.abt__intro::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background-image: repeating-linear-gradient(45deg, transparent, transparent 28px, #ffffff08 28px, #ffffff08 56px);
pointer-events: none
}

.abt__intro-wrap {
max-width: 1170px;
margin: 0 auto;
padding: 0 16px;
display: flex;
gap: 56px;
align-items: flex-start;
position: relative;
z-index: 1
}

.abt__intro-img-col {
flex: 0 0 280px
}

.abt__intro-img-frame {
position: relative;
border-radius: 4px;
overflow: hidden;
box-shadow: 1px 9px 44px 1px #51aeb81a
}

.abt__intro-img-frame::after {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: radial-gradient(ellipse at center, transparent 30%, #0009 100%);
pointer-events: none
}

.abt__intro-img {
width: 100%;
height: auto;
display: block;
opacity: 0;
animation: abt-fade-in .7s ease forwards
}

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

.abt__intro-txt-col {
flex: 1;
padding-top: 8px
}

.abt__intro-kicker {
font-size: 13px;
text-transform: uppercase;
letter-spacing: .12em;
color: #ffffffbf;
margin-bottom: 16px
}

.abt__intro-heading {
font-size: 66px;
line-height: 1.15;
margin-bottom: 28px;
color: #fff
}

.abt__intro-problem {
font-size: 28px;
line-height: 1.4;
margin-bottom: 28px;
color: #ffffffe6
}

.abt__intro-solution {
font-size: 28px;
line-height: 1.4;
color: #fffffff2;
font-style: italic
}

.abt__intro-corner {
position: absolute;
top: 0;
right: 0;
width: 0;
height: 0;
border-style: solid;
border-width: 0 96px 96px 0;
border-color: transparent #ffffff14 transparent transparent
}

@media (max-width: 1024px) {
.abt__intro-wrap {
flex-direction: column;
gap: 28px
}

.abt__intro-img-col {
flex: 0 0 auto;
width: 100%;
max-width: 320px
}

.abt__intro-heading {
font-size: 38px
}

.abt__intro-problem,
.abt__intro-solution {
font-size: 28px
}
}

@media (max-width: 640px) {
.abt__intro {
padding-top: 28px;
padding-bottom: 56px
}

.abt__intro-img-col {
display: none
}

.abt__intro-heading {
font-size: 28px
}

.abt__intro-problem,
.abt__intro-solution {
font-size: 13px
}
}

.abt__story {
background: #121212;
padding-top: 96px;
padding-bottom: 96px;
position: relative
}

.abt__story-wrap {
max-width: 1170px;
margin: 0 auto;
padding: 0 16px
}

.abt__story-heading {
font-size: 38px;
line-height: 1.15;
margin-bottom: 56px;
color: #fff
}

.abt__story-heading-accent {
color: #51AEB8
}

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

.abt__story-left {
display: flex;
flex-direction: column;
gap: 28px
}

.abt__story-intro {
font-size: 28px;
line-height: 1.6;
color: #e8e8e8
}

.abt__story-body-txt {
font-size: 13px;
line-height: 1.6;
color: #e8e8e8d9;
margin-bottom: 16px
}

.abt__story-body-txt:last-child {
margin-bottom: 0
}

.abt__story-right {
position: relative
}

.abt__story-img-wrap {
position: relative;
border-radius: 36px;
overflow: hidden;
box-shadow: 1px 7px 20px 1px #a5d1d614
}

.abt__story-img {
width: 100%;
height: auto;
display: block;
opacity: 0;
animation: abt-fade-in .7s ease .2s forwards
}

.abt__story-marker {
position: absolute;
top: 28px;
right: -16px;
width: 28px;
height: 28px;
border-radius: 50%;
background: #51AEB8;
box-shadow: 1px 3px 2px 1px #51aeb814;
z-index: 2
}

.abt__story-corner-accent {
position: absolute;
bottom: 0;
left: 0;
width: 0;
height: 0;
border-style: solid;
border-width: 0 0 56px 56px;
border-color: transparent transparent #51aeb826
}

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

.abt__story-heading {
font-size: 28px;
margin-bottom: 28px
}

.abt__story-intro {
font-size: 28px
}
}

@media (max-width: 640px) {
.abt__story {
padding-top: 56px;
padding-bottom: 56px
}

.abt__story-right {
display: none
}

.abt__story-heading {
font-size: 28px
}

.abt__story-intro {
font-size: 13px
}
}

.abt__matrix {
background: #0f0f0f;
padding-top: 96px;
padding-bottom: 96px;
position: relative;
overflow: hidden
}

.abt__matrix::before {
content: '';
position: absolute;
top: 50%;
left: 50%;
width: 600px;
height: 600px;
background: radial-gradient(circle, #51aeb814 0%, transparent 70%);
transform: translate(-50%, -50%);
pointer-events: none;
animation: abt-glow-pulse 6s ease-in-out infinite
}

@keyframes abt-glow-pulse {

0%,
100% {
opacity: .4
}

50% {
opacity: .7
}
}

.abt__matrix-wrap {
max-width: 1170px;
margin: 0 auto;
padding: 0 16px;
position: relative;
z-index: 1
}

.abt__matrix-top {
display: flex;
gap: 96px;
align-items: flex-start;
margin-bottom: 56px
}

.abt__matrix-heading-zone {
flex: 1
}

.abt__matrix-heading {
font-size: 38px;
line-height: 1.15;
color: #fff;
margin-bottom: 16px
}

.abt__matrix-heading-rest {
color: #A5D1D6
}

.abt__matrix-desc {
font-size: 13px;
line-height: 1.6;
color: #e8e8e8cc
}

.abt__matrix-img-zone {
flex: 0 0 380px;
position: relative
}

.abt__matrix-img-frame {
border-radius: 4px;
overflow: hidden;
box-shadow: 1px 9px 44px 1px #a5d1d61a;
position: relative
}

.abt__matrix-img {
width: 100%;
height: auto;
display: block;
opacity: 0;
animation: abt-fade-in .7s ease .3s forwards
}

.abt__matrix-img-outline {
position: absolute;
top: -8px;
left: -8px;
right: -8px;
bottom: -8px;
border: 2px solid transparent;
border-radius: 4px;
pointer-events: none
}

.abt__matrix-img-outline svg {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%
}

.abt__matrix-img-outline svg rect {
fill: none;
stroke: #51AEB8;
stroke-width: 2;
stroke-dasharray: 1200;
stroke-dashoffset: 1200;
animation: abt-draw-outline 2.5s ease-out .5s forwards
}

@keyframes abt-draw-outline {
to {
stroke-dashoffset: 0
}
}

.abt__matrix-grid {
display: grid;
grid-template-columns: 1fr 1fr;
grid-template-rows: 1fr 1fr;
gap: 28px
}

.abt__matrix-cell {
background: #ffffff05;
border: 1px solid #51aeb826;
border-radius: 4px;
padding: 28px;
position: relative;
transition: background .6s ease, border-color .6s ease, transform .5s cubic-bezier(0.25, 0.46, 0.45, 0.94)
}

.abt__matrix-cell:hover {
background: #51aeb80d;
border-color: #51aeb84d;
transform: translateY(-4px)
}

.abt__matrix-cell--accent {
background: #51aeb814;
border-color: #51aeb840
}

.abt__matrix-cell-label {
font-size: 13px;
text-transform: uppercase;
letter-spacing: .1em;
color: #A5D1D6;
margin-bottom: 8px
}

.abt__matrix-cell-heading {
font-size: 28px;
line-height: 1.4;
color: #fff;
margin-bottom: 16px
}

.abt__matrix-cell-txt {
font-size: 13px;
line-height: 1.6;
color: #e8e8e8cc
}

.abt__matrix-cell-corner {
position: absolute;
bottom: 0;
right: 0;
width: 0;
height: 0;
border-style: solid;
border-width: 0 0 28px 28px;
border-color: transparent transparent #a5d1d61a
}

@media (max-width: 1024px) {
.abt__matrix-top {
flex-direction: column;
gap: 28px
}

.abt__matrix-img-zone {
flex: 0 0 auto;
width: 100%;
max-width: 420px
}

.abt__matrix-heading {
font-size: 28px
}

.abt__matrix-grid {
gap: 16px
}

.abt__matrix-cell {
padding: 16px
}

.abt__matrix-cell-heading {
font-size: 28px
}
}

@media (max-width: 640px) {
.abt__matrix {
padding-top: 56px;
padding-bottom: 56px
}

.abt__matrix-img-zone {
display: none
}

.abt__matrix-heading {
font-size: 28px
}

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

.abt__matrix-cell-heading {
font-size: 13px
}
}

.abt ::selection {
background: linear-gradient(90deg, #51AEB8 0%, #A5D1D6 100%);
color: #fff
}

.lnch {
background: #0d0d0d;
color: #e8e8e8;
overflow-x: clip
}

.lnch__title-zone {
position: relative;
padding: 56px 16px;
background: linear-gradient(263deg, #51AEB8 0%, #51AEB8 50%, #1a1a1a 50%, #1a1a1a 100%);
overflow: visible
}

.lnch__title-zone::before {
content: '';
position: absolute;
top: 28px;
left: 8%;
width: 6px;
height: 6px;
background: #F9FAFB;
border-radius: 50%;
opacity: .15
}

.lnch__title-zone::after {
content: '';
position: absolute;
bottom: 56px;
right: 12%;
width: 8px;
height: 8px;
background: #A5D1D6;
border-radius: 50%;
opacity: .2
}

.lnch__title-inner {
max-width: 1170px;
margin: 0 auto;
position: relative
}

.lnch__dot-scatter {
position: absolute;
width: 5px;
height: 5px;
background: #F9FAFB;
border-radius: 50%;
opacity: .12
}

.lnch__dot-scatter.one {
top: 16px;
left: 25%
}

.lnch__dot-scatter.two {
top: 96px;
right: 18%
}

.lnch__dot-scatter.three {
bottom: 28px;
left: 45%
}

.lnch__dot-scatter.four {
top: 56px;
right: 35%
}

.lnch__title-main {
font-size: 66px;
line-height: 1.15;
margin: 0;
letter-spacing: .02em;
text-transform: uppercase;
color: #fff
}

.lnch__title-accent {
color: #A5D1D6;
font-style: italic
}

.lnch__outcome {
background: #0a0a0a;
padding: 96px 16px;
position: relative
}

.lnch__outcome::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: linear-gradient(135deg, #51aeb808 0%, #0a0a0a00 100%);
pointer-events: none;
animation: lnch-bg-shift 8s ease-in-out infinite alternate
}

@keyframes lnch-bg-shift {
0% {
background: linear-gradient(135deg, #51aeb808 0%, #0a0a0a00 100%)
}

100% {
background: linear-gradient(315deg, #a5d1d605 0%, #0a0a0a00 100%)
}
}

.lnch__outcome-inner {
max-width: 1170px;
margin: 0 auto;
position: relative;
z-index: 1
}

.lnch__outcome-header {
font-size: 38px;
line-height: 1.4;
margin: 0 0 56px;
color: #fff
}

.lnch__outcome-header-split {
color: #51AEB8
}

.lnch__outcome-intro {
font-size: 13px;
line-height: 1.6;
margin: 0 0 28px;
max-width: 100%
}

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

.lnch__outcome-col {
font-size: 13px;
line-height: 1.6;
margin: 0
}

.lnch__outcome-img-wrapper {
margin: 56px 0 0;
display: none
}

.lnch__outcome-img {
width: 100%;
height: auto;
display: block;
border-radius: 4px;
opacity: 0;
transition: opacity .7s ease
}

.lnch__outcome-img.loaded {
opacity: 1
}

@media (min-width: 768px) {
.lnch__outcome-columns {
grid-template-columns: 1fr 1fr
}

.lnch__outcome-img-wrapper {
display: block
}
}

.lnch__conditions {
background: linear-gradient(90deg, #51AEB8 0%, #1a1a1a 100%);
padding: 96px 16px;
position: relative
}

.lnch__conditions-inner {
max-width: 1170px;
margin: 0 auto
}

.lnch__conditions-top {
display: grid;
grid-template-columns: 1fr;
gap: 28px;
margin: 0 0 56px;
align-items: start
}

.lnch__conditions-heading {
font-size: 38px;
line-height: 1.4;
margin: 0;
color: #fff
}

.lnch__conditions-heading-split {
color: #0a0a0a
}

.lnch__conditions-top-text {
font-size: 13px;
line-height: 1.6;
margin: 0
}

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

.lnch__conditions-card {
background: #0a0a0a99;
padding: 28px;
border-radius: 4px;
box-shadow: 1px 7px 20px 1px #51aeb814;
position: relative;
overflow: hidden;
transition: box-shadow .65s cubic-bezier(0.25, 0.46, 0.45, 0.94)
}

.lnch__conditions-card::before {
content: '';
position: absolute;
top: -2px;
left: -2px;
right: -2px;
bottom: -2px;
border: 1px solid #a5d1d626;
border-radius: 4px;
opacity: 0;
animation: lnch-pulse 4s ease-in-out infinite;
pointer-events: none
}

@keyframes lnch-pulse {

0%,
100% {
opacity: 0
}

50% {
opacity: 1
}
}

.lnch__conditions-card:hover {
box-shadow: 1px 9px 44px 1px #51aeb81a
}

.lnch__conditions-card-title {
font-size: 28px;
line-height: 1.4;
margin: 0 0 16px;
color: #A5D1D6
}

.lnch__conditions-card-text {
font-size: 13px;
line-height: 1.6;
margin: 0
}

.lnch__conditions-img-wrapper {
margin: 56px 0 0;
display: none
}

.lnch__conditions-img {
width: 100%;
height: auto;
display: block;
border-radius: 4px;
opacity: 0;
transition: opacity .6s cubic-bezier(0.25, 0.46, 0.45, 0.94)
}

.lnch__conditions-img.loaded {
opacity: 1
}

@media (min-width: 768px) {
.lnch__conditions-top {
grid-template-columns: 1fr 1fr
}

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

.lnch__conditions-img-wrapper {
display: block
}
}

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

.lnch__divider-one {
height: 1px;
background: transparent;
position: relative;
margin: 0;
padding: 0
}

.lnch__divider-one::before {
content: '';
position: absolute;
left: 0;
top: 0;
width: 96px;
height: 1px;
background: #51AEB8
}

.lnch__divider-one::after {
content: '';
position: absolute;
right: 0;
top: 0;
width: 96px;
height: 1px;
background: #A5D1D6
}

.lnch__audience {
background: #0f0f0f;
padding: 96px 16px;
position: relative
}

.lnch__audience-inner {
max-width: 1170px;
margin: 0 auto
}

.lnch__audience-header {
font-size: 38px;
line-height: 1.4;
margin: 0 0 56px;
color: #fff
}

.lnch__audience-header-split {
color: #51AEB8
}

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

.lnch__audience-list {
list-style: none;
margin: 0;
padding: 0;
position: relative
}

.lnch__audience-list::before {
content: '';
position: absolute;
left: 6px;
top: 8px;
bottom: 8px;
width: 1px;
background: linear-gradient(180deg, #51AEB8 0%, #A5D1D6 100%);
opacity: .3
}

.lnch__audience-item {
position: relative;
padding: 0 0 28px 28px;
margin: 0
}

.lnch__audience-item:last-child {
padding-bottom: 0
}

.lnch__audience-item::before {
content: '';
position: absolute;
left: 0;
top: 8px;
width: 13px;
height: 13px;
background: #0f0f0f;
border: 2px solid #51AEB8;
border-radius: 50%;
transition: background-color .55s ease, border-color .55s ease
}

.lnch__audience-item.active::before {
background: #51AEB8;
border-color: #A5D1D6
}

.lnch__audience-item-title {
font-size: 28px;
line-height: 1.4;
margin: 0 0 8px;
color: #A5D1D6
}

.lnch__audience-item-text {
font-size: 13px;
line-height: 1.6;
margin: 0
}

.lnch__audience-comparison {
background: #51aeb80d;
padding: 28px;
border-radius: 4px;
box-shadow: 1px 3px 2px 1px #51aeb814
}

.lnch__audience-comparison-title {
font-size: 28px;
line-height: 1.4;
margin: 0 0 28px;
color: #fff
}

.lnch__audience-comparison-grid {
display: grid;
grid-template-columns: 1fr;
gap: 16px
}

.lnch__audience-comparison-row {
display: grid;
grid-template-columns: 2fr 1fr 1fr;
gap: 16px;
align-items: center;
padding: 8px 0;
border-bottom: 1px solid #a5d1d61a
}

.lnch__audience-comparison-row:last-child {
border-bottom: none
}

.lnch__audience-comparison-label {
font-size: 13px;
line-height: 1.6;
margin: 0;
color: #e8e8e8
}

.lnch__audience-comparison-cell {
text-align: center
}

.lnch__audience-comparison-check {
display: inline-block;
width: 20px;
height: 20px;
position: relative
}

.lnch__audience-comparison-check::before {
content: '';
position: absolute;
left: 50%;
top: 50%;
transform: translate(-50%, -50%) rotate(45deg);
width: 6px;
height: 12px;
border-right: 2px solid #51AEB8;
border-bottom: 2px solid #51AEB8
}

.lnch__audience-comparison-cross {
display: inline-block;
width: 20px;
height: 20px;
position: relative
}

.lnch__audience-comparison-cross::before,
.lnch__audience-comparison-cross::after {
content: '';
position: absolute;
left: 50%;
top: 50%;
width: 14px;
height: 2px;
background: #A5D1D6
}

.lnch__audience-comparison-cross::before {
transform: translate(-50%, -50%) rotate(45deg)
}

.lnch__audience-comparison-cross::after {
transform: translate(-50%, -50%) rotate(-45deg)
}

.lnch__audience-img-group {
display: none;
gap: 16px
}

.lnch__audience-img-wrapper {
flex: 1
}

.lnch__audience-img {
width: 100%;
height: 280px;
object-fit: cover;
display: block;
border-radius: 4px;
opacity: 0;
transition: opacity .75s cubic-bezier(0.25, 0.46, 0.45, 0.94)
}

.lnch__audience-img.loaded {
opacity: 1
}

@media (min-width: 768px) {
.lnch__audience-layout {
grid-template-columns: 1fr 1fr
}

.lnch__audience-img-group {
display: flex
}
}

@media (min-width: 1024px) {
.lnch__audience-comparison-grid {
grid-template-columns: 1fr
}
}

.lnch__divider-two {
height: 1px;
background: transparent;
position: relative;
margin: 0;
padding: 0
}

.lnch__divider-two::before {
content: '';
position: absolute;
left: 0;
top: 0;
width: 56px;
height: 1px;
background: #A5D1D6
}

.lnch__divider-two::after {
content: '';
position: absolute;
right: 0;
top: 0;
width: 56px;
height: 1px;
background: #51AEB8
}

.lnch__support {
background: #0d0d0d;
padding: 96px 16px;
position: relative
}

.lnch__support-inner {
max-width: 1170px;
margin: 0 auto
}

.lnch__support-top-join {
background: #51aeb814;
padding: 28px;
border-radius: 36px 36px 4px 4px;
margin: 0 0 28px;
text-align: center;
box-shadow: 1px 7px 20px 1px #51aeb814
}

.lnch__support-top-join-text {
font-size: 28px;
line-height: 1.4;
margin: 0;
color: #A5D1D6;
font-style: italic
}

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

.lnch__support-card {
background: #141414;
padding: 28px;
border-radius: 4px;
box-shadow: 1px 3px 2px 1px #a5d1d614;
position: relative;
overflow: hidden;
transition: box-shadow .7s ease
}

.lnch__support-card:hover {
box-shadow: 1px 9px 44px 1px #a5d1d61a
}

.lnch__support-card-header {
display: flex;
align-items: center;
justify-content: space-between;
margin: 0 0 16px
}

.lnch__support-card-title {
font-size: 28px;
line-height: 1.4;
margin: 0;
color: #fff;
transition: text-shadow .6s cubic-bezier(0.25, 0.46, 0.45, 0.94), color .6s cubic-bezier(0.25, 0.46, 0.45, 0.94)
}

.lnch__support-card:hover .lnch__support-card-title {
text-shadow: 0 0 16px #51aeb866;
color: #A5D1D6
}

.lnch__support-badge {
background: #51AEB8;
color: #0a0a0a;
font-size: 13px;
line-height: 1;
padding: 8px 16px;
border-radius: 36px;
font-weight: 700;
display: inline-flex;
align-items: center;
justify-content: center;
min-width: 56px
}

.lnch__support-card-text {
font-size: 13px;
line-height: 1.6;
margin: 0
}

.lnch__support-footer {
margin: 56px 0 0;
text-align: center
}

.lnch__support-footer-text {
font-size: 13px;
line-height: 1.6;
margin: 0 0 28px
}

.lnch__support-cta {
display: inline-block;
padding: 16px 56px;
background: #51AEB8;
color: #0a0a0a;
font-size: 13px;
line-height: 1;
text-transform: uppercase;
letter-spacing: .05em;
border-radius: 4px;
text-decoration: none;
font-weight: 700;
position: relative;
overflow: hidden;
transition: color .55s cubic-bezier(0.25, 0.46, 0.45, 0.94)
}

.lnch__support-cta::before {
content: '';
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 0;
background: #A5D1D6;
transition: height .65s cubic-bezier(0.25, 0.46, 0.45, 0.94);
z-index: 0
}

.lnch__support-cta:hover::before {
height: 100%
}

.lnch__support-cta span {
position: relative;
z-index: 1
}

.lnch__support-img-wrapper {
margin: 56px 0 0;
display: none
}

.lnch__support-img {
width: 100%;
height: auto;
display: block;
border-radius: 4px;
opacity: 0;
transition: opacity .8s ease
}

.lnch__support-img.loaded {
opacity: 1
}

@media (min-width: 768px) {
.lnch__support-columns {
grid-template-columns: 1fr 1fr 1fr
}

.lnch__support-img-wrapper {
display: block
}
}

@media (min-width: 1024px) {
.lnch__title-zone {
padding: 96px 16px
}
}

.reach-out {
background: #0a0a0a;
color: #e8e8e8;
overflow-x: clip
}

.reach-out__title-wrap {
position: relative;
max-width: 1170px;
margin: 0 auto;
padding: 96px 16px;
display: grid;
grid-template-rows: 2fr 1fr;
min-height: 85vh;
gap: 0
}

.reach-out__grid-bg {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
opacity: .03;
background-image: linear-gradient(to right, #51AEB8 1px, transparent 1px), linear-gradient(to bottom, #51AEB8 1px, transparent 1px);
background-size: 80px 80px;
pointer-events: none;
z-index: 1
}

.reach-out__title-text {
position: relative;
z-index: 2;
display: flex;
flex-direction: column;
justify-content: center;
padding: 0 28px
}

.reach-out__title-main {
font-size: 66px;
line-height: 1.15;
margin: 0 0 28px;
font-weight: 700;
letter-spacing: -.02em
}

.reach-out__title-gradient {
background: linear-gradient(263deg, #51AEB8 0%, #51AEB8 50%, #A5D1D6 50%, #A5D1D6 100%);
-webkit-background-clip: text;
background-clip: text;
-webkit-text-fill-color: transparent
}

.reach-out__title-sub {
font-size: 28px;
line-height: 1.6;
color: #b8b8b8;
max-width: 720px
}

.reach-out__title-img-zone {
position: relative;
z-index: 2;
overflow: hidden;
border-radius: 4px;
margin: 0 28px
}

.reach-out__title-img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
opacity: 0;
animation: reach-out-fade-in .7s ease .2s forwards;
position: relative
}

.reach-out__title-img::after {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: linear-gradient(to top, #0a0a0a00 0%, #0a0a0abf 100%);
pointer-events: none
}

@keyframes reach-out-fade-in {
to {
opacity: 1
}
}

.reach-out__form-section {
max-width: 1170px;
margin: 0 auto;
padding: 96px 16px;
position: relative;
border-top: 2px solid #51AEB8;
border-bottom: 2px solid #51AEB8
}

.reach-out__form-container {
display: grid;
grid-template-columns: 1fr 320px;
gap: 56px;
align-items: start
}

.reach-out__form-left {
background: #131313;
padding: 56px;
border-radius: 4px;
box-shadow: 1px 9px 44px 1px #51aeb81a;
position: relative
}

.reach-out__form-heading {
font-size: 38px;
line-height: 1.4;
margin: 0 0 16px;
font-weight: 600
}

.reach-out__form-heading--split {
color: #51AEB8
}

.reach-out__form-intro {
font-size: 13px;
line-height: 1.6;
color: #b8b8b8;
margin: 0 0 56px
}

.reach-out__form-element {
margin: 0 0 28px
}

.reach-out__form-label {
display: block;
font-size: 13px;
line-height: 1.4;
color: #e8e8e8;
margin: 0 0 8px;
font-weight: 500;
text-transform: uppercase;
letter-spacing: .05em
}

.reach-out__form-input {
width: 100%;
padding: 16px;
background: #0a0a0a;
border: 1px solid #2a2a2a;
border-radius: 4px;
color: #e8e8e8;
font-size: 13px;
line-height: 1.4;
transition: border-color .6s ease, box-shadow .6s ease;
outline: none
}

.reach-out__form-input::placeholder {
color: #e8e8e84d
}

.reach-out__form-input:focus {
border-color: #51AEB8;
box-shadow: inset 0 0 0 1px #51AEB8
}

.reach-out__form-radio-group {
display: flex;
flex-direction: column;
gap: 16px
}

.reach-out__form-radio-item {
display: flex;
align-items: center;
position: relative;
cursor: pointer;
padding: 16px;
background: #0a0a0a;
border: 1px solid #2a2a2a;
border-radius: 4px;
transition: border-color .5s ease, background-color .5s ease
}

.reach-out__form-radio-item:hover {
border-color: #51AEB8;
background: #0f0f0f
}

.reach-out__form-radio-input {
position: absolute;
opacity: 0;
width: 0;
height: 0
}

.reach-out__form-radio-visual {
width: 20px;
height: 20px;
border: 2px solid #2a2a2a;
border-radius: 36px;
margin-right: 16px;
position: relative;
transition: border-color .6s ease;
flex-shrink: 0
}

.reach-out__form-radio-input:checked+.reach-out__form-radio-visual {
border-color: #51AEB8
}

.reach-out__form-radio-visual::after {
content: '';
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%) scale(0);
width: 10px;
height: 10px;
background: #51AEB8;
border-radius: 36px;
transition: transform .6s cubic-bezier(0.25, 0.46, 0.45, 0.94)
}

.reach-out__form-radio-input:checked+.reach-out__form-radio-visual::after {
transform: translate(-50%, -50%) scale(1)
}

.reach-out__form-radio-label {
font-size: 13px;
line-height: 1.4;
color: #e8e8e8;
flex: 1
}

.reach-out__form-privacy {
margin: 28px 0 0;
display: flex;
align-items: start;
gap: 16px
}

.reach-out__form-checkbox-input {
width: 20px;
height: 20px;
border: 2px solid #2a2a2a;
border-radius: 4px;
appearance: none;
cursor: pointer;
position: relative;
transition: border-color .6s ease, background-color .6s ease;
flex-shrink: 0;
margin-top: 2px
}

.reach-out__form-checkbox-input:checked {
border-color: #51AEB8;
background: #51AEB8
}

.reach-out__form-checkbox-input::after {
content: '';
position: absolute;
top: 2px;
left: 6px;
width: 4px;
height: 8px;
border: solid #0a0a0a;
border-width: 0 2px 2px 0;
transform: rotate(45deg) scale(0);
transition: transform .5s cubic-bezier(0.25, 0.46, 0.45, 0.94)
}

.reach-out__form-checkbox-input:checked::after {
transform: rotate(45deg) scale(1)
}

.reach-out__form-privacy-text {
font-size: 13px;
line-height: 1.6;
color: #b8b8b8;
margin: 0
}

.reach-out__form-privacy-link {
color: #51AEB8;
text-decoration: none;
transition: color .5s ease
}

.reach-out__form-privacy-link:hover {
color: #A5D1D6
}

.reach-out__form-submit {
width: 100%;
padding: 16px 28px;
background: #51AEB8;
border: none;
border-radius: 4px;
color: #0a0a0a;
font-size: 13px;
line-height: 1.4;
font-weight: 600;
text-transform: uppercase;
letter-spacing: .08em;
cursor: pointer;
margin: 28px 0 0;
position: relative;
overflow: hidden;
transition: color .7s ease
}

.reach-out__form-submit::before {
content: '';
position: absolute;
bottom: 0;
left: 0;
width: 100%;
height: 0;
background: #A5D1D6;
transition: height .7s cubic-bezier(0.25, 0.46, 0.45, 0.94);
z-index: 1
}

.reach-out__form-submit:hover::before {
height: 100%
}

.reach-out__form-submit span {
position: relative;
z-index: 2
}

.reach-out__form-right {
display: flex;
flex-direction: column;
gap: 28px
}

.reach-out__info-card {
background: #131313;
padding: 28px;
border-radius: 4px;
box-shadow: 1px 7px 20px 1px #51aeb814;
position: relative;
overflow: hidden
}

.reach-out__info-card::before {
content: '';
position: absolute;
top: 0;
right: 0;
width: 4px;
height: 100%;
background: linear-gradient(263deg, #51AEB8 0%, #51AEB8 50%, #A5D1D6 50%, #A5D1D6 100%)
}

.reach-out__info-icon {
width: 8px;
height: 8px;
background: #51AEB8;
border-radius: 36px;
margin: 0 0 16px;
box-shadow: 0 0 16px #51aeb899
}

.reach-out__info-label {
font-size: 13px;
line-height: 1.4;
color: #A5D1D6;
margin: 0 0 8px;
text-transform: uppercase;
letter-spacing: .05em;
font-weight: 500
}

.reach-out__info-value {
font-size: 13px;
line-height: 1.6;
color: #e8e8e8;
margin: 0
}

.reach-out__info-link {
color: #e8e8e8;
text-decoration: none;
transition: color .6s ease;
display: inline-block
}

.reach-out__info-link:hover {
color: #51AEB8
}

.reach-out__details-section {
background: #51AEB8;
padding: 96px 16px;
position: relative
}

.reach-out__details-section::before {
content: '';
position: absolute;
top: -60px;
left: 50%;
transform: translateX(-50%);
width: 80%;
height: 60px;
background: #0a0a0a;
border-radius: 0 0 50% 50%
}

.reach-out__details-container {
max-width: 1170px;
margin: 0 auto
}

.reach-out__details-intro {
max-width: 100%;
margin: 0 0 56px
}

.reach-out__details-intro-text {
font-size: 28px;
line-height: 1.6;
color: #0a0a0a;
margin: 0;
font-weight: 500
}

.reach-out__details-body {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 56px
}

.reach-out__details-column {
font-size: 13px;
line-height: 1.6;
color: #0a0a0a
}

.reach-out__details-column p {
margin: 0 0 16px
}

.reach-out__details-column p:last-child {
margin: 0
}

.reach-out__hours-list {
list-style: none;
padding: 0;
margin: 28px 0 0;
display: flex;
flex-direction: column;
gap: 8px;
position: relative
}

.reach-out__hours-list::before {
content: '';
position: absolute;
left: 4px;
top: 8px;
bottom: 8px;
width: 1px;
background: #0a0a0a33
}

.reach-out__hours-item {
display: flex;
align-items: center;
gap: 16px;
position: relative;
padding-left: 28px
}

.reach-out__hours-item::before {
content: '';
position: absolute;
left: 0;
top: 50%;
transform: translateY(-50%);
width: 8px;
height: 8px;
background: #0a0a0a;
border-radius: 36px;
border: 2px solid #51AEB8;
z-index: 1
}

.reach-out__hours-day {
font-weight: 600;
min-width: 100px
}

.reach-out__hours-time {
color: #0a0a0acc
}

@media (max-width: 1024px) {
.reach-out__title-main {
font-size: 38px
}

.reach-out__title-sub {
font-size: 28px
}

.reach-out__form-container {
grid-template-columns: 1fr;
gap: 28px
}

.reach-out__form-left {
padding: 28px
}

.reach-out__form-right {
grid-template-columns: repeat(2, 1fr);
display: grid
}

.reach-out__details-body {
grid-template-columns: 1fr;
gap: 28px
}
}

@media (max-width: 768px) {
.reach-out__title-wrap {
padding: 56px 16px;
min-height: auto
}

.reach-out__title-main {
font-size: 28px
}

.reach-out__title-sub {
font-size: 13px
}

.reach-out__form-section {
padding: 56px 16px
}

.reach-out__form-heading {
font-size: 28px
}

.reach-out__form-right {
grid-template-columns: 1fr
}

.reach-out__details-section {
padding: 56px 16px
}

.reach-out__details-intro-text {
font-size: 13px
}

.reach-out__title-img-zone {
display: none
}

.reach-out__title-wrap {
grid-template-rows: 1fr
}
}

@media (max-width: 640px) {
.reach-out__form-left {
padding: 16px
}

.reach-out__info-card {
padding: 16px
}
}

.success-page {
background: linear-gradient(263deg, #1a1f2e 0%, #1a1f2e 50%, #0f1419 50%, #0f1419 100%);
min-height: 100vh;
padding: 96px 16px;
color: #e8eaed
}

.success-page .success-container {
max-width: 1170px;
margin: 0 auto
}

.success-page .success-visual {
text-align: center;
margin-bottom: 56px
}

.success-page .success-icon-wrapper {
display: inline-flex;
align-items: center;
justify-content: center;
width: 140px;
height: 140px;
background: #0f1419;
border: 3px solid #51AEB8;
border-radius: 36px;
position: relative;
box-shadow: 1px 9px 44px 1px #51aeb81a
}

.success-page .success-checkmark {
width: 70px;
height: 70px;
position: relative
}

.success-page .success-checkmark::before {
content: '';
position: absolute;
width: 12px;
height: 40px;
background: #51AEB8;
left: 35px;
top: 8px;
transform: rotate(45deg);
border-radius: 4px
}

.success-page .success-checkmark::after {
content: '';
position: absolute;
width: 12px;
height: 24px;
background: #51AEB8;
left: 16px;
top: 26px;
transform: rotate(-45deg);
border-radius: 4px
}

.success-page .success-content {
text-align: center;
margin-bottom: 56px
}

.success-page .success-heading {
font-size: 66px;
line-height: 1.15;
margin: 0 0 28px;
color: #51AEB8;
letter-spacing: -.02em
}

.success-page .success-message {
font-size: 28px;
line-height: 1.4;
margin: 0 0 28px;
color: #e8eaed
}

.success-page .success-details {
font-size: 13px;
line-height: 1.6;
margin: 0;
color: #a8adb5;
max-width: 680px;
margin-left: auto;
margin-right: auto
}

.success-page .success-info-grid {
display: grid;
grid-template-columns: 1fr;
gap: 28px;
margin-bottom: 56px;
max-width: 820px;
margin-left: auto;
margin-right: auto
}

.success-page .info-card {
background: #1a1f2e;
padding: 28px;
border-radius: 36px;
border: 1px solid #2a3241;
box-shadow: 1px 7px 20px 1px #51aeb814;
transition: transform .7s cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow .7s cubic-bezier(0.25, 0.46, 0.45, 0.94)
}

.success-page .info-card:hover {
transform: translateY(-4px);
box-shadow: 1px 9px 44px 1px #51aeb81a
}

.success-page .info-card__title {
font-size: 28px;
line-height: 1.4;
margin: 0 0 16px;
color: #A5D1D6
}

.success-page .info-card__text {
font-size: 13px;
line-height: 1.6;
margin: 0;
color: #c4c7cc
}

.success-page .action-section {
background: #51AEB8;
padding: 56px 28px;
border-radius: 36px;
text-align: center;
margin-bottom: 56px;
box-shadow: 1px 9px 44px 1px #51aeb81a
}

.success-page .action-section__heading {
font-size: 38px;
line-height: 1.4;
margin: 0 0 28px;
color: #0f1419
}

.success-page .action-buttons {
display: flex;
flex-direction: column;
gap: 16px;
align-items: center;
justify-content: center
}

.success-page .btn-primary {
display: inline-block;
padding: 16px 56px;
background: #0f1419;
color: #51AEB8;
text-decoration: none;
border-radius: 4px;
font-size: 13px;
line-height: 1.4;
text-transform: uppercase;
letter-spacing: .08em;
transition: background .6s ease, transform .5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
position: relative;
overflow: hidden;
box-shadow: 1px 7px 20px 1px #0f141914
}

.success-page .btn-primary::before {
content: '';
position: absolute;
bottom: 0;
left: 0;
width: 100%;
height: 0;
background: #1a1f2e;
transition: height .6s ease;
z-index: 0
}

.success-page .btn-primary:hover::before {
height: 100%
}

.success-page .btn-primary span {
position: relative;
z-index: 1
}

.success-page .btn-primary:hover {
transform: translateY(-2px);
box-shadow: 1px 9px 44px 1px #0f14191a
}

.success-page .btn-secondary {
display: inline-block;
padding: 16px 56px;
background: transparent;
color: #0f1419;
text-decoration: none;
border-radius: 4px;
font-size: 13px;
line-height: 1.4;
text-transform: uppercase;
letter-spacing: .08em;
border: 2px solid #0f1419;
transition: background .7s cubic-bezier(0.25, 0.46, 0.45, 0.94), color .7s cubic-bezier(0.25, 0.46, 0.45, 0.94), transform .5s ease
}

.success-page .btn-secondary:hover {
background: #0f1419;
color: #51AEB8;
transform: translateY(-2px)
}

.success-page .timeline {
max-width: 720px;
margin: 0 auto;
position: relative
}

.success-page .timeline::before {
content: '';
position: absolute;
left: 19px;
top: 28px;
bottom: 28px;
width: 2px;
background: #2a3241
}

.success-page .timeline-step {
display: flex;
gap: 28px;
margin-bottom: 28px;
position: relative
}

.success-page .timeline-step:last-child {
margin-bottom: 0
}

.success-page .timeline-dot {
width: 40px;
height: 40px;
background: #1a1f2e;
border: 3px solid #51AEB8;
border-radius: 36px;
flex-shrink: 0;
position: relative;
z-index: 1;
transition: background .6s cubic-bezier(0.25, 0.46, 0.45, 0.94), transform .5s ease
}

.success-page .timeline-step:hover .timeline-dot {
background: #51AEB8;
transform: scale(1.1)
}

.success-page .timeline-step__content {
flex: 1;
padding-top: 8px
}

.success-page .timeline-step__title {
font-size: 28px;
line-height: 1.4;
margin: 0 0 8px;
color: #A5D1D6
}

.success-page .timeline-step__description {
font-size: 13px;
line-height: 1.6;
margin: 0;
color: #a8adb5
}

@media (min-width: 768px) {
.success-page .success-info-grid {
grid-template-columns: repeat(2, 1fr)
}

.success-page .action-buttons {
flex-direction: row
}

.success-page .timeline::before {
left: 50%;
transform: translateX(-1px)
}

.success-page .timeline-step {
justify-content: flex-end;
width: 50%
}

.success-page .timeline-step:nth-child(even) {
margin-left: auto;
justify-content: flex-start;
flex-direction: row-reverse
}

.success-page .timeline-step:nth-child(even) .timeline-step__content {
text-align: right
}
}

@media (min-width: 1024px) {
.success-page {
padding: 96px 28px
}

.success-page .success-heading {
font-size: 66px
}

.success-page .success-message {
font-size: 28px
}
}