* {
    box-sizing: border-box
}

html {
    font-size: 100%;
    scroll-behavior: smooth
}

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

.site-header {
    position: relative;
    background: #fff;
    font-family: 'PT Sans', sans-serif
}

.hd-top-bar {
    background: #A3BC4F;
    padding: 6px 20px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 20px
}

.hd-top-contact {
    display: flex;
    align-items: center;
    gap: 20px
}

.hd-contact-item {
    display: flex;
    align-items: center;
    gap: 6px;
    color: #fff;
    font-size: 15px;
    line-height: 1.2;
    text-decoration: none;
    letter-spacing: .01em;
    transition: opacity .25s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.hd-contact-item:hover {
    opacity: .8
}

.hd-contact-item:focus {
    outline: 2px solid #fff;
    outline-offset: 2px;
    border-radius: 8px;
    transform: scale(1.02)
}

.hd-contact-item .jam {
    font-size: 18px
}

.hd-main {
    max-width: 1170px;
    margin: 0 auto;
    padding: 20px;
    display: flex;
    align-items: stretch;
    gap: 40px
}

.hd-brand-box {
    flex: 0 0 auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 12px;
    padding: 20px 40px 20px 20px;
    border-right: 2px solid #E5EEE2;
    min-width: 260px
}

.hd-logo-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 2px dashed #A3BC4F;
    border-radius: 48px;
    padding: 6px 20px;
    background: #E5EEE2;
    box-shadow: 0 3px 6px -2px #a3bc4f14;
    width: fit-content
}

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

.hd-brand-name {
    font-size: 38px;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: .01em;
    color: #1b2a00;
    margin: 0
}

.hd-brand-name span {
    color: #A3BC4F
}

.hd-tagline {
    font-size: 15px;
    line-height: 1.6;
    letter-spacing: .02em;
    color: #3a4a1a;
    margin: 0;
    font-style: italic;
    max-width: 240px
}

.hd-nav-box {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-end;
    gap: 20px;
    padding: 20px 0
}

.hd-nav-accent {
    display: flex;
    align-items: center;
    gap: 12px
}

.hd-nav-badge {
    background: #E5EEE2;
    border-radius: 36px;
    padding: 6px 20px;
    font-size: 15px;
    line-height: 1.2;
    letter-spacing: .01em;
    color: #2a3a0a;
    font-weight: 700;
    border: 1px solid #A1D7A0;
    box-shadow: 0 3px 6px -2px #a1d7a014
}

.hd-nav-list {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    justify-content: flex-end
}

.hd-nav-list li {
    display: flex
}

.hd-nav-link {
    display: flex;
    align-items: center;
    gap: 6px;
    font-family: 'PT Sans', sans-serif;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: .01em;
    color: #2a3a0a;
    text-decoration: none;
    padding: 12px 20px;
    border-radius: 13px;
    border: 2px solid transparent;
    position: relative;
    overflow: hidden;
    transition: color .22s cubic-bezier(0.34, 1.56, 0.64, 1), border-color .22s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.hd-nav-link::before {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 0;
    background: #A3BC4F;
    transition: height .28s cubic-bezier(0.34, 1.56, 0.64, 1);
    z-index: 0
}

.hd-nav-link:hover::before {
    height: 100%
}

.hd-nav-link:hover {
    color: #fff;
    border-color: #A3BC4F
}

.hd-nav-link span,
.hd-nav-link .jam {
    position: relative;
    z-index: 1
}

.hd-nav-link:focus {
    outline: 2px solid #A3BC4F;
    outline-offset: 2px;
    transform: scale(1.02)
}

.hd-nav-link.active {
    background: #A3BC4F;
    color: #fff;
    border-color: #A3BC4F;
    box-shadow: 0 4px 14px -2px #a3bc4f1a
}

.hd-nav-link.active::before {
    height: 100%
}

.hd-divider {
    height: 4px;
    background: linear-gradient(90deg, #A3BC4F 0%, #A1D7A0 60%, #E5EEE2 100%);
    width: 100%
}

@media (max-width: 900px) {
    .hd-main {
        flex-direction: column;
        gap: 20px;
        padding: 20px
    }

    .hd-brand-box {
        border-right: none;
        border-bottom: 2px solid #E5EEE2;
        padding: 0 0 20px;
        min-width: 0
    }

    .hd-nav-box {
        align-items: flex-start;
        padding: 0
    }

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

@media (max-width: 600px) {
    .hd-top-contact {
        flex-direction: column;
        align-items: flex-end;
        gap: 6px
    }

    .hd-brand-name {
        font-size: 28px
    }

    .hd-nav-link {
        font-size: 15px;
        padding: 12px
    }
}

.site-footer {
    background: #1b2a00;
    font-family: 'PT Sans', sans-serif;
    position: relative;
    overflow: hidden
}

.ft-texture {
    position: absolute;
    inset: 0;
    background-image: radial-gradient(circle, #a3bc4f14 1px, transparent 1px);
    background-size: 24px 24px;
    pointer-events: none
}

.ft-main {
    position: relative;
    max-width: 1170px;
    margin: 0 auto;
    padding: 40px 20px;
    display: flex;
    flex-wrap: wrap;
    gap: 40px;
    align-items: flex-start
}

.ft-contact-box {
    flex: 1 1 260px;
    display: flex;
    flex-direction: column;
    gap: 20px
}

.ft-brand-stack {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 12px
}

.ft-logo-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 2px dashed #A3BC4F;
    border-radius: 48px;
    padding: 6px 20px;
    background: #a3bc4f1f;
    box-shadow: 0 3px 6px -2px #a3bc4f14
}

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

.ft-brand-label {
    font-size: 22px;
    font-weight: 700;
    letter-spacing: .01em;
    line-height: 1.2;
    color: #fff;
    margin: 0
}

.ft-brand-label span {
    color: #A3BC4F
}

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

.ft-contact-entry {
    display: flex;
    align-items: flex-start;
    gap: 12px
}

.ft-contact-icon {
    color: #A3BC4F;
    font-size: 18px;
    flex-shrink: 0;
    margin-top: 2px
}

.ft-contact-text {
    font-size: 15px;
    line-height: 1.6;
    letter-spacing: .01em;
    color: #c8d8a0;
    text-decoration: none;
    transition: color .22s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.ft-contact-text:hover {
    color: #fff
}

.ft-contact-text:focus {
    outline: 2px solid #A3BC4F;
    outline-offset: 2px;
    border-radius: 8px;
    transform: scale(1.02)
}

.ft-nav-box {
    flex: 1 1 200px;
    display: flex;
    flex-direction: column;
    gap: 20px;
    align-items: flex-start
}

.ft-nav-heading {
    font-size: 15px;
    font-weight: 700;
    letter-spacing: .02em;
    line-height: 1.2;
    color: #A3BC4F;
    text-transform: uppercase;
    margin: 0
}

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

.ft-nav-link {
    font-size: 15px;
    line-height: 1.6;
    letter-spacing: .01em;
    color: #c8d8a0;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    border-radius: 8px;
    padding: 6px 0;
    transition: color .25s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.ft-nav-link:hover {
    color: #fff
}

.ft-nav-link:focus {
    outline: 2px solid #A3BC4F;
    outline-offset: 2px;
    transform: scale(1.02)
}

.ft-nav-link .jam {
    font-size: 15px;
    color: #A1D7A0
}

.ft-bottom {
    position: relative;
    border-top: 1px solid #a3bc4f2e;
    max-width: 1170px;
    margin: 0 auto;
    padding: 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 12px
}

.ft-copy {
    font-size: 15px;
    line-height: 1.6;
    letter-spacing: .01em;
    color: #c8d8a0b3;
    margin: 0
}

.ft-copy strong {
    color: #A3BC4F;
    font-weight: 700
}

.ft-city-tag {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 15px;
    line-height: 1.2;
    letter-spacing: .01em;
    color: #c8d8a099
}

.ft-city-tag .jam {
    font-size: 15px;
    color: #A1D7A0
}

@media (max-width: 900px) {
    .ft-main {
        flex-direction: column;
        gap: 40px
    }

    .ft-nav-box {
        align-items: flex-start
    }
}

@media (max-width: 600px) {
    .ft-bottom {
        flex-direction: column;
        align-items: flex-start
    }
}

.policy-view {
    max-width: 1170px;
    margin: 0 auto;
    padding: 80px 40px;
    color: #2a2e1f
}

.policy-view h1 {
    font-size: 52px;
    line-height: 1.2;
    letter-spacing: .01em;
    color: #2a2e1f;
    margin-bottom: 40px;
    margin-top: 0
}

.policy-view h2 {
    font-size: 38px;
    line-height: 1.2;
    letter-spacing: .01em;
    color: #2a2e1f;
    margin-top: 80px;
    margin-bottom: 20px
}

.policy-view h3 {
    font-size: 28px;
    line-height: 1.6;
    letter-spacing: .01em;
    color: #2a2e1f;
    margin-top: 40px;
    margin-bottom: 20px
}

.policy-view h4 {
    font-size: 22px;
    line-height: 1.6;
    letter-spacing: .02em;
    color: #3a4020;
    margin-top: 40px;
    margin-bottom: 12px
}

.policy-view h5 {
    font-size: 18px;
    line-height: 1.6;
    letter-spacing: .02em;
    color: #3a4020;
    margin-top: 20px;
    margin-bottom: 12px
}

.policy-view h6 {
    font-size: 15px;
    line-height: 1.6;
    letter-spacing: .02em;
    color: #4a5530;
    margin-top: 20px;
    margin-bottom: 12px
}

.policy-view div {
    font-size: 18px;
    line-height: 1.9;
    letter-spacing: .01em;
    color: #2a2e1f;
    margin-bottom: 20px
}

.policy-view ul {
    padding-left: 40px;
    margin-top: 20px;
    margin-bottom: 20px;
    list-style: none
}

.policy-view ol {
    padding-left: 40px;
    margin-top: 20px;
    margin-bottom: 20px;
    list-style: none;
    counter-reset: policy-counter
}

.policy-view ul li {
    font-size: 18px;
    line-height: 1.9;
    letter-spacing: .01em;
    color: #2a2e1f;
    margin-bottom: 12px;
    padding-left: 20px;
    position: relative
}

.policy-view ul li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 13px;
    width: 6px;
    height: 6px;
    border-radius: 48px;
    background-color: #A3BC4F
}

.policy-view ol li {
    font-size: 18px;
    line-height: 1.9;
    letter-spacing: .01em;
    color: #2a2e1f;
    margin-bottom: 12px;
    padding-left: 20px;
    position: relative;
    counter-increment: policy-counter
}

.policy-view ol li::before {
    content: counter(policy-counter) ".";
    position: absolute;
    left: 0;
    top: 0;
    font-size: 15px;
    line-height: 1.9;
    color: #A3BC4F;
    font-weight: 700;
    letter-spacing: .01em;
    transform: translateX(-100%)
}

.policy-view ul ul,
.policy-view ol ol,
.policy-view ul ol,
.policy-view ol ul {
    margin-top: 12px;
    margin-bottom: 6px
}

.policy-view strong,
.policy-view b {
    font-weight: 700;
    color: #1e2210
}

.policy-view a {
    color: #6a7c2a;
    text-decoration: underline;
    text-underline-offset: 3px;
    text-decoration-thickness: 1px;
    transition: color .25s cubic-bezier(0.34, 1.56, 0.64, 1), text-decoration-color .25s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.policy-view a:hover {
    color: #A3BC4F;
    text-decoration-color: #A3BC4F
}

.policy-view a:active {
    color: #7a9030
}

.policy-view hr {
    border: none;
    border-top: 1.5px solid #E5EEE2;
    margin-top: 40px;
    margin-bottom: 40px
}

.policy-view table {
    width: 100%;
    border-collapse: collapse;
    margin-top: 40px;
    margin-bottom: 40px;
    font-size: 15px;
    line-height: 1.6;
    letter-spacing: .01em;
    border-radius: 13px;
    overflow: hidden;
    box-shadow: 0 3px 6px -2px #a3bc4f14 0 4px 14px -2px #a3bc4f1a
}

.policy-view thead {
    background-color: #A3BC4F
}

.policy-view thead th {
    color: #fff;
    font-size: 15px;
    line-height: 1.6;
    letter-spacing: .02em;
    font-weight: 700;
    padding: 20px;
    text-align: left;
    border: none
}

.policy-view tbody tr {
    border-bottom: 1.5px solid #E5EEE2;
    transition: background-color .22s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.policy-view tbody tr:last-child {
    border-bottom: none
}

.policy-view tbody tr:nth-child(even) {
    background-color: #f4f8f0
}

.policy-view tbody tr:hover {
    background-color: #E5EEE2
}

.policy-view td {
    padding: 20px;
    font-size: 15px;
    line-height: 1.9;
    letter-spacing: .01em;
    color: #2a2e1f;
    border: none;
    vertical-align: top
}

@media (max-width: 900px) {
    .policy-view {
        padding: 40px 20px
    }

    .policy-view h1 {
        font-size: 38px
    }

    .policy-view h2 {
        font-size: 28px;
        margin-top: 40px
    }

    .policy-view h3 {
        font-size: 22px
    }

    .policy-view table {
        display: block;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch
    }
}

@media (max-width: 600px) {
    .policy-view {
        padding: 40px 12px
    }

    .policy-view h1 {
        font-size: 28px
    }

    .policy-view h2 {
        font-size: 22px
    }

    .policy-view h3 {
        font-size: 18px
    }

    .policy-view div,
    .policy-view ul li,
    .policy-view ol li {
        font-size: 15px
    }

    .policy-view ul {
        padding-left: 20px
    }

    .policy-view ol {
        padding-left: 20px
    }
}

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

.srv .pg-wrap {
    max-width: 1170px;
    margin: 0 auto;
    padding: 0 40px
}

.srv .strip-row {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    min-height: 600px;
    padding-top: 80px;
    padding-bottom: 40px;
    position: relative
}

.srv .strip-img-col {
    width: 220px;
    flex-shrink: 0;
    border-radius: 13px;
    overflow: hidden;
    position: relative;
    margin-right: 40px
}

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

.srv .strip-img-vignette {
    position: absolute;
    inset: 0;
    background: linear-gradient(to right, #1e280a8c 0%, #1e280a2e 55%, #1e280a9e 100%);
    border-radius: 13px;
    pointer-events: none
}

.srv .strip-text-col {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: relative;
    z-index: 1
}

.srv .dot-scatter {
    position: absolute;
    inset: 0;
    pointer-events: none;
    overflow: hidden;
    border-radius: 8px
}

.srv .dot-scatter::before {
    content: "";
    position: absolute;
    inset: 0;
    background-image: radial-gradient(circle, #A3BC4F 1.5px, transparent 1.5px), radial-gradient(circle, #A1D7A0 1px, transparent 1px);
    background-size: 38px 38px, 22px 22px;
    background-position: 0 0, 11px 11px;
    opacity: .1
}

.srv .strip-eyebrow {
    font-size: 15px;
    letter-spacing: .14em;
    color: #A3BC4F;
    text-transform: uppercase;
    font-weight: 700;
    margin-bottom: 20px;
    display: block
}

.srv .strip-h1 {
    font-size: 52px;
    line-height: 1.2;
    font-weight: 800;
    color: #1b2209;
    letter-spacing: .01em;
    margin-bottom: 20px
}

.srv .strip-h1 em {
    font-style: normal;
    color: #A3BC4F
}

.srv .strip-desc {
    font-size: 18px;
    line-height: 1.9;
    color: #374016;
    max-width: 580px;
    letter-spacing: .01em
}

.srv .strip-desc strong {
    font-weight: 700;
    color: #A3BC4F
}

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

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

.srv .offers-band {
    background: radial-gradient(ellipse at 52% 48%, #f6f9ee 0%, #d8e8c8 60%, #b8cf90 100%);
    padding: 80px 0;
    position: relative
}

.srv .offers-band::after {
    content: "";
    position: absolute;
    bottom: -1px;
    left: 0;
    right: 0;
    height: 6px;
    background: linear-gradient(to right, #A3BC4F 0%, #A1D7A0 55%, #E5EEE2 100%);
    pointer-events: none
}

.srv .offers-top {
    display: flex;
    flex-direction: row;
    align-items: flex-end;
    gap: 40px;
    margin-bottom: 40px
}

.srv .offers-h2 {
    font-size: 38px;
    line-height: 1.2;
    font-weight: 300;
    color: #1b2209;
    letter-spacing: .01em;
    flex: 1
}

.srv .offers-h2 strong {
    font-weight: 800
}

.srv .offers-lead {
    font-size: 15px;
    line-height: 1.9;
    color: #374016;
    max-width: 340px;
    letter-spacing: .02em
}

.srv .cards-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px
}

.srv .svc-card {
    background: #fff;
    border-radius: 13px;
    padding: 40px 20px 20px;
    box-shadow: 0 4px 14px -2px #a3bc4f1a;
    display: flex;
    flex-direction: column;
    gap: 12px;
    position: relative;
    overflow: hidden;
    transition: transform .25s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow .28s cubic-bezier(0.34, 1.56, 0.64, 1);
    cursor: default
}

.srv .svc-card::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    right: 0;
    height: 0;
    background: linear-gradient(to top, #E5EEE2 0%, #e5eee200 100%);
    transition: height .22s cubic-bezier(0.34, 1.56, 0.64, 1);
    border-radius: 0 0 13px 13px;
    pointer-events: none
}

.srv .svc-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 8px 48px -2px #a3bc4f1c
}

.srv .svc-card:hover::before {
    height: 60%
}

.srv .card-icon-wrap {
    width: 48px;
    height: 48px;
    border-radius: 13px;
    background: #E5EEE2;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: background .22s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.srv .svc-card:hover .card-icon-wrap {
    background: #A3BC4F
}

.srv .card-icon-wrap i {
    font-size: 22px;
    color: #A3BC4F;
    transition: color .22s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.srv .svc-card:hover .card-icon-wrap i {
    color: #fff
}

.srv .card-h3 {
    font-size: 18px;
    line-height: 1.2;
    font-weight: 700;
    color: #1b2209;
    letter-spacing: .01em;
    margin: 0
}

.srv .card-body {
    font-size: 15px;
    line-height: 1.9;
    color: #374016;
    letter-spacing: .01em;
    margin: 0
}

.srv .card-body strong {
    color: #A3BC4F;
    font-weight: 700
}

.srv .card-tag {
    display: inline-block;
    font-size: 15px;
    font-weight: 700;
    color: #A3BC4F;
    background: #E5EEE2;
    border-radius: 36px;
    padding: 6px 12px;
    letter-spacing: .02em;
    margin-top: auto;
    align-self: flex-start
}

.srv .zigzag-row {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    width: 100%;
    overflow: hidden
}

.srv .zigzag-row svg {
    display: block;
    width: 100%
}

.srv .detail-band {
    background: #fff;
    padding: 80px 0;
    position: relative
}

.srv .detail-split {
    display: flex;
    flex-direction: row;
    gap: 40px;
    align-items: flex-start
}

.srv .detail-left {
    flex: 0 0 40%;
    position: relative
}

.srv .detail-img-wrap {
    border-radius: 13px;
    overflow: hidden;
    width: 100%;
    aspect-ratio: 4/5;
    position: relative;
    box-shadow: 0 8px 48px -2px #a3bc4f1c
}

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

.srv .detail-img-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(160deg, #a3bc4f2e 0%, #1e280a61 100%);
    pointer-events: none
}

.srv .detail-badge {
    position: absolute;
    bottom: 20px;
    left: 20px;
    background: #A3BC4F;
    color: #fff;
    font-size: 15px;
    font-weight: 700;
    border-radius: 36px;
    padding: 6px 20px;
    letter-spacing: .02em;
    box-shadow: 0 3px 6px -2px #a3bc4f14
}

.srv .detail-right {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 20px
}

.srv .detail-h2 {
    font-size: 38px;
    line-height: 1.2;
    font-weight: 800;
    color: #1b2209;
    letter-spacing: .01em;
    margin: 0
}

.srv .detail-sub {
    font-size: 22px;
    line-height: 1.6;
    font-weight: 300;
    color: #A3BC4F;
    letter-spacing: .01em;
    margin: 0
}

.srv .detail-para {
    font-size: 18px;
    line-height: 1.9;
    color: #374016;
    letter-spacing: .01em;
    margin: 0
}

.srv .detail-para .first-word {
    font-weight: 700;
    color: #A3BC4F;
    text-transform: uppercase
}

.srv .steps-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 12px
}

.srv .step-item {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 12px;
    background: #E5EEE2;
    border-radius: 13px;
    padding: 20px;
    transition: background .28s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow .25s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.srv .step-item:hover {
    background: #A1D7A0;
    box-shadow: 0 4px 14px -2px #a3bc4f1a
}

.srv .step-num {
    width: 36px;
    height: 36px;
    border-radius: 48px;
    background: #A3BC4F;
    color: #fff;
    font-size: 15px;
    font-weight: 800;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    letter-spacing: .01em
}

.srv .step-text {
    font-size: 15px;
    line-height: 1.9;
    color: #1b2209;
    letter-spacing: .01em
}

.srv .step-text strong {
    font-weight: 700;
    display: block;
    font-size: 15px;
    color: #374016
}

.srv .metrics-row {
    display: flex;
    flex-direction: row;
    gap: 20px;
    margin-top: 6px
}

.srv .metric-box {
    flex: 1;
    background: radial-gradient(ellipse at 50% 30%, #f6f9ee 0%, #d8e8c8 100%);
    border-radius: 13px;
    padding: 20px;
    display: flex;
    flex-direction: column;
    gap: 6px;
    box-shadow: 0 3px 6px -2px #a3bc4f14
}

.srv .metric-val {
    font-size: 38px;
    font-weight: 800;
    color: #A3BC4F;
    line-height: 1.2;
    letter-spacing: .01em
}

.srv .metric-label {
    font-size: 15px;
    line-height: 1.6;
    color: #374016;
    letter-spacing: .02em
}

.srv .spin-deco {
    position: absolute;
    right: -30px;
    top: 60px;
    width: 90px;
    height: 90px;
    animation: srv-spin 18s linear infinite;
    pointer-events: none;
    opacity: .18
}

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

    to {
        transform: rotate(360deg)
    }
}

@media (max-width: 1200px) {
    .srv .cards-grid {
        grid-template-columns: repeat(2, 1fr)
    }

    .srv .strip-h1 {
        font-size: 38px
    }
}

@media (max-width: 900px) {
    .srv .strip-row {
        flex-direction: column;
        padding-top: 40px
    }

    .srv .strip-img-col {
        width: 100%;
        height: 220px;
        margin-right: 0;
        margin-bottom: 20px
    }

    .srv .detail-split {
        flex-direction: column
    }

    .srv .detail-left {
        flex: none;
        width: 100%
    }

    .srv .offers-top {
        flex-direction: column;
        align-items: flex-start;
        gap: 12px
    }

    .srv .metrics-row {
        flex-direction: column
    }

    .srv .spin-deco {
        display: none
    }
}

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

    .srv .cards-grid {
        grid-template-columns: 1fr
    }

    .srv .strip-h1 {
        font-size: 28px
    }

    .srv .offers-h2 {
        font-size: 28px
    }

    .srv .detail-h2 {
        font-size: 28px
    }

    .srv .metric-val {
        font-size: 28px
    }

    .srv .offers-band {
        padding: 40px 0
    }

    .srv .detail-band {
        padding: 40px 0
    }
}

.abt-us {
    overflow-x: clip
}

.abt-us .split-panel {
    display: flex;
    flex-direction: row;
    min-height: 600px;
    max-width: 100%
}

.abt-us .split-left {
    flex: 1 1 55%;
    background: #A3BC4F;
    padding: 80px 80px 40px;
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    overflow: hidden
}

.abt-us .split-right {
    flex: 1 1 45%;
    background: #fff;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 80px 60px 40px;
    position: relative
}

.abt-us .concentric-deco {
    position: absolute;
    top: 20px;
    right: 20px;
    width: 120px;
    height: 120px;
    pointer-events: none
}

.abt-us .concentric-deco span {
    position: absolute;
    border: 1.5px solid #ffffff40;
    border-radius: 8px
}

.abt-us .concentric-deco span:nth-child(1) {
    inset: 0
}

.abt-us .concentric-deco span:nth-child(2) {
    inset: 14px
}

.abt-us .concentric-deco span:nth-child(3) {
    inset: 28px
}

.abt-us .concentric-deco span:nth-child(4) {
    inset: 42px
}

.abt-us .img-geo-wrap {
    width: 100%;
    max-width: 480px;
    aspect-ratio: 4/3;
    border-radius: 13px;
    overflow: hidden;
    margin-bottom: 40px;
    box-shadow: 0 8px 48px -2px #a3bc4f1c
}

.abt-us .img-geo-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    filter: saturate(1.08) brightness(0.97) sepia(0.08)
}

.abt-us .panel-eyebrow {
    font-size: 15px;
    letter-spacing: .14em;
    color: #ffffffbf;
    text-transform: uppercase;
    margin-bottom: 12px;
    font-weight: 500
}

.abt-us .panel-big-heading {
    font-size: 68px;
    line-height: 1.2;
    font-weight: 800;
    color: #fff;
    letter-spacing: .01em;
    margin-bottom: 20px
}

.abt-us .panel-big-heading em {
    font-style: normal;
    font-weight: 300;
    display: block;
    font-size: 38px;
    letter-spacing: .02em
}

.abt-us .dot-pattern {
    position: absolute;
    bottom: 30px;
    left: 40px;
    display: grid;
    grid-template-columns: repeat(6, 10px);
    grid-template-rows: repeat(4, 10px);
    gap: 8px;
    pointer-events: none;
    opacity: .22
}

.abt-us .dot-pattern span {
    width: 3px;
    height: 3px;
    border-radius: 48px;
    background: #fff;
    display: block
}

.abt-us .right-tag {
    font-size: 15px;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: #A3BC4F;
    font-weight: 600;
    margin-bottom: 20px
}

.abt-us .right-h2 {
    font-size: 38px;
    line-height: 1.2;
    font-weight: 700;
    color: #1b2208;
    letter-spacing: .01em;
    margin-bottom: 20px
}

.abt-us .right-h2 strong {
    font-weight: 300;
    display: block;
    font-size: 22px;
    color: #4a5a1a;
    letter-spacing: .02em;
    margin-top: 6px
}

.abt-us .right-body {
    font-size: 18px;
    line-height: 1.9;
    color: #2c3612;
    letter-spacing: .01em;
    margin-bottom: 20px
}

.abt-us .right-body .first-word {
    font-size: 15px;
    font-weight: 700;
    text-transform: uppercase;
    color: #A3BC4F;
    letter-spacing: .08em;
    margin-right: 4px
}

.abt-us .notch-block {
    padding-left: 20px;
    position: relative;
    margin-top: 20px
}

.abt-us .notch-block::before {
    content: '';
    position: absolute;
    left: 0;
    top: 4px;
    bottom: 4px;
    width: 4px;
    background: #A3BC4F;
    border-radius: 8px
}

.abt-us .notch-text {
    font-size: 15px;
    line-height: 1.6;
    color: #3d4f18;
    letter-spacing: .01em;
    font-style: italic
}

.abt-us .metrics-band {
    background: linear-gradient(105deg, #A3BC4F 0%, #A3BC4F 38%, #E5EEE2 38%, #E5EEE2 100%);
    padding: 80px 0
}

.abt-us .metrics-inner {
    max-width: 1170px;
    margin: 0 auto;
    padding: 0 40px;
    display: flex;
    flex-direction: row;
    gap: 40px;
    align-items: stretch
}

.abt-us .metrics-left-col {
    flex: 0 0 38%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 20px;
    padding-right: 40px
}

.abt-us .metrics-heading {
    font-size: 28px;
    line-height: 1.2;
    font-weight: 700;
    color: #fff;
    letter-spacing: .01em
}

.abt-us .metrics-sub {
    font-size: 15px;
    line-height: 1.6;
    color: #ffffffd9;
    letter-spacing: .01em
}

.abt-us .metrics-right-col {
    flex: 1 1 62%;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px
}

.abt-us .metric-card {
    background: #fff;
    border-radius: 13px;
    padding: 40px 20px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
    box-shadow: 0 4px 14px -2px #a3bc4f1a;
    transition: transform .28s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow .28s cubic-bezier(0.34, 1.56, 0.64, 1);
    cursor: default
}

.abt-us .metric-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 8px 48px -2px #a3bc4f1c
}

.abt-us .metric-num {
    font-size: 52px;
    font-weight: 800;
    line-height: 1.2;
    color: #A3BC4F;
    letter-spacing: .01em
}

.abt-us .metric-label {
    font-size: 15px;
    line-height: 1.6;
    color: #2c3612;
    letter-spacing: .01em;
    font-weight: 500
}

.abt-us .metric-desc {
    font-size: 15px;
    line-height: 1.6;
    color: #5a6e2a;
    letter-spacing: .01em
}

.abt-us .team-strip {
    background: #fff;
    padding: 80px 0 40px
}

.abt-us .team-inner {
    max-width: 1170px;
    margin: 0 auto;
    padding: 0 40px
}

.abt-us .team-top {
    display: flex;
    flex-direction: row;
    gap: 80px;
    align-items: flex-start;
    margin-bottom: 40px
}

.abt-us .team-top-left {
    flex: 0 0 340px
}

.abt-us .team-top-right {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    gap: 20px
}

.abt-us .team-h2 {
    font-size: 38px;
    font-weight: 700;
    line-height: 1.2;
    color: #1b2208;
    letter-spacing: .01em;
    margin-bottom: 12px
}

.abt-us .team-h2 span {
    font-weight: 300;
    color: #4a5a1a
}

.abt-us .team-para {
    font-size: 18px;
    line-height: 1.9;
    color: #2c3612;
    letter-spacing: .01em
}

.abt-us .team-para .first-word {
    font-size: 15px;
    font-weight: 700;
    text-transform: uppercase;
    color: #A3BC4F;
    letter-spacing: .08em;
    margin-right: 4px
}

.abt-us .approach-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 12px
}

.abt-us .approach-item {
    background: #E5EEE2;
    border-radius: 13px;
    padding: 20px;
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 20px;
    transition: background .22s cubic-bezier(0.34, 1.56, 0.64, 1), transform .22s cubic-bezier(0.34, 1.56, 0.64, 1);
    cursor: default
}

.abt-us .approach-item:hover {
    background: #A3BC4F;
    transform: translateX(6px)
}

.abt-us .approach-item:hover .approach-item-title {
    color: #fff
}

.abt-us .approach-item:hover .approach-item-body {
    color: #ffffffe0
}

.abt-us .approach-item:hover .approach-icon-box {
    background: #ffffff38
}

.abt-us .approach-icon-box {
    width: 40px;
    height: 40px;
    border-radius: 8px;
    background: #A3BC4F;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: background .22s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.abt-us .approach-icon-box svg {
    width: 20px;
    height: 20px;
    fill: none;
    stroke: #fff;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round
}

.abt-us .approach-item-title {
    font-size: 18px;
    font-weight: 700;
    color: #1b2208;
    letter-spacing: .01em;
    margin-bottom: 6px;
    transition: color .22s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.abt-us .approach-item-body {
    font-size: 15px;
    line-height: 1.6;
    color: #3d4f18;
    letter-spacing: .01em;
    transition: color .22s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.abt-us .img-duo {
    display: flex;
    flex-direction: row;
    gap: 20px;
    margin-top: 40px
}

.abt-us .img-duo-main {
    flex: 1 1 60%;
    border-radius: 13px;
    overflow: hidden;
    height: 280px;
    box-shadow: 0 3px 6px -2px #a3bc4f14
}

.abt-us .img-duo-main img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    filter: saturate(1.08) brightness(0.97) sepia(0.08)
}

.abt-us .img-duo-side {
    flex: 1 1 40%;
    border-radius: 13px;
    overflow: hidden;
    height: 280px;
    box-shadow: 0 3px 6px -2px #a3bc4f14
}

.abt-us .img-duo-side img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    filter: saturate(1.08) brightness(0.97) sepia(0.08)
}

@media (max-width: 900px) {
    .abt-us .split-panel {
        flex-direction: column
    }

    .abt-us .split-left {
        padding: 40px;
        flex: none
    }

    .abt-us .split-right {
        padding: 40px;
        flex: none
    }

    .abt-us .panel-big-heading {
        font-size: 52px
    }

    .abt-us .metrics-inner {
        flex-direction: column
    }

    .abt-us .metrics-left-col {
        flex: none;
        padding-right: 0
    }

    .abt-us .metrics-right-col {
        grid-template-columns: repeat(2, 1fr)
    }

    .abt-us .metrics-band {
        background: linear-gradient(180deg, #A3BC4F 0%, #A3BC4F 40%, #E5EEE2 40%, #E5EEE2 100%)
    }

    .abt-us .team-top {
        flex-direction: column;
        gap: 40px
    }

    .abt-us .team-top-left {
        flex: none;
        width: 100%
    }

    .abt-us .img-duo {
        flex-direction: column
    }

    .abt-us .img-duo-main,
    .abt-us .img-duo-side {
        flex: none;
        height: 220px
    }
}

@media (max-width: 600px) {
    .abt-us .split-left {
        padding: 40px 20px
    }

    .abt-us .split-right {
        padding: 40px 20px
    }

    .abt-us .panel-big-heading {
        font-size: 38px
    }

    .abt-us .panel-big-heading em {
        font-size: 22px
    }

    .abt-us .right-h2 {
        font-size: 28px
    }

    .abt-us .metrics-inner {
        padding: 0 20px
    }

    .abt-us .metrics-right-col {
        grid-template-columns: 1fr
    }

    .abt-us .metrics-heading {
        font-size: 22px
    }

    .abt-us .team-inner {
        padding: 0 20px
    }

    .abt-us .team-h2 {
        font-size: 28px
    }

    .abt-us .team-strip {
        padding: 40px 0
    }
}

.rt {
    max-width: 100%;
    overflow-x: hidden
}

.rt .pg-wrap {
    max-width: 1170px;
    margin: 0 auto;
    padding: 0 40px
}

.rt .pg-wrap-sm {
    max-width: 1170px;
    margin: 0 auto;
    padding: 0 20px
}

.rt .titl {
    padding: 60px 0 100px;
    background: #f4f7ee;
    background-image: radial-gradient(ellipse at 20% 30%, #a3bc4f38 0%, #a3bc4f38 30%, transparent 30%), radial-gradient(ellipse at 75% 15%, #a1d7a047 0%, #a1d7a047 25%, transparent 25%), radial-gradient(ellipse at 55% 80%, #e5eee2e6 0%, #e5eee2e6 40%, transparent 40%), radial-gradient(ellipse at 90% 65%, #a3bc4f1f 0%, #a3bc4f1f 35%, transparent 35%);
    position: relative
}

.rt .titl-grid {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 80px
}

.rt .titl-left {
    flex: 1 1 0
}

.rt .titl-right {
    flex: 0 0 420px;
    position: relative
}

.rt .titl-dots {
    display: flex;
    flex-direction: row;
    gap: 6px;
    margin-bottom: 40px
}

.rt .titl-dot {
    width: 8px;
    height: 8px;
    border-radius: 48px;
    background: #A3BC4F;
    opacity: .5
}

.rt .titl-dot.active {
    opacity: 1;
    width: 20px
}

.rt .titl-dot.dim {
    opacity: .25
}

.rt .titl-eyebrow {
    font-size: 15px;
    line-height: 1.6;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: #A3BC4F;
    font-weight: 600;
    margin-bottom: 20px
}

.rt .titl-h1 {
    font-size: 68px;
    line-height: 1.2;
    letter-spacing: .01em;
    font-weight: 800;
    color: #1e2a0e;
    margin-bottom: 12px
}

.rt .titl-h2 {
    font-size: 38px;
    line-height: 1.2;
    letter-spacing: .01em;
    font-weight: 300;
    color: #3a4d1c;
    margin-bottom: 40px
}

.rt .titl-desc {
    font-size: 18px;
    line-height: 1.9;
    letter-spacing: .01em;
    color: #3a4d1c;
    max-width: 480px;
    margin-bottom: 40px
}

.rt .titl-btn {
    display: inline-block;
    padding: 12px 40px;
    border-radius: 8px;
    font-size: 15px;
    font-weight: 600;
    letter-spacing: .02em;
    color: #fff;
    background: #A3BC4F;
    text-decoration: none !important;
    border: none;
    cursor: pointer;
    position: relative;
    overflow: hidden;
    transition: color .25s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow .28s cubic-bezier(0.34, 1.56, 0.64, 1);
    box-shadow: 0 4px 14px -2px #a3bc4f1a
}

.rt .titl-btn::before {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 0;
    background: #1e2a0e;
    transition: height .22s cubic-bezier(0.34, 1.56, 0.64, 1);
    z-index: 0
}

.rt .titl-btn:hover::before {
    height: 100%
}

.rt .titl-btn span {
    position: relative;
    z-index: 1
}

.rt .titl-btn:hover {
    box-shadow: 0 8px 48px -2px #a3bc4f1c;
    color: #fff
}

.rt .titl-img-wrap {
    border-radius: 13px;
    overflow: hidden;
    width: 420px;
    height: 500px;
    box-shadow: 0 8px 48px -2px #a3bc4f1c;
    position: relative
}

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

.rt .titl-img-tint {
    position: absolute;
    inset: 0;
    background: linear-gradient(160deg, #a3bc4f52 0%, #a3bc4f52 40%, #a1d7a02e 40%, #a1d7a02e 100%);
    border-radius: 13px
}

.rt .titl-dbl-border {
    position: absolute;
    inset: -8px;
    border-radius: 20px;
    border: 1.5px solid #a3bc4f40;
    pointer-events: none
}

.rt .titl-dbl-border-outer {
    position: absolute;
    inset: -16px;
    border-radius: 26px;
    border: 1px solid #a3bc4f1f;
    pointer-events: none
}

.rt .platform {
    padding: 80px 0;
    background: #fff
}

.rt .platform-divider {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 0;
    margin-bottom: 80px
}

.rt .platform-div-line {
    flex: 1;
    height: 1px;
    background: #e0e8d0
}

.rt .platform-div-accent {
    width: 60px;
    height: 3px;
    background: #A3BC4F;
    border-radius: 36px;
    margin: 0 12px
}

.rt .platform-grid {
    display: grid;
    grid-template-columns: 1fr 2fr;
    gap: 80px;
    align-items: start
}

.rt .platform-sidebar {
    position: sticky;
    top: 40px
}

.rt .platform-label {
    font-size: 15px;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: #A3BC4F;
    font-weight: 600;
    margin-bottom: 20px
}

.rt .platform-heading {
    font-size: 38px;
    line-height: 1.2;
    letter-spacing: .01em;
    font-weight: 800;
    color: #1e2a0e;
    margin-bottom: 20px
}

.rt .platform-sub {
    font-size: 18px;
    line-height: 1.9;
    color: #3a4d1c;
    letter-spacing: .01em
}

.rt .platform-items {
    display: flex;
    flex-direction: column;
    gap: 20px
}

.rt .platform-item {
    display: flex;
    flex-direction: row;
    gap: 20px;
    align-items: flex-start;
    padding: 20px;
    border-radius: 13px;
    background: #f9fbf5;
    box-shadow: 0 3px 6px -2px #a3bc4f14;
    transition: transform .28s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow .28s cubic-bezier(0.34, 1.56, 0.64, 1);
    animation: settle .32s cubic-bezier(0.34, 1.56, 0.64, 1) both
}

.rt .platform-item:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 48px -2px #a3bc4f1c
}

@keyframes settle {
    from {
        transform: scale(0.95);
        opacity: .7
    }

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

.rt .platform-icon {
    flex: 0 0 44px;
    width: 44px;
    height: 44px;
    border-radius: 8px;
    background: #A3BC4F;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 22px
}

.rt .platform-item-body {
    flex: 1
}

.rt .platform-item-ttl {
    font-size: 18px;
    font-weight: 700;
    color: #1e2a0e;
    letter-spacing: .01em;
    margin-bottom: 6px;
    line-height: 1.2
}

.rt .platform-item-txt {
    font-size: 15px;
    line-height: 1.9;
    color: #4a5e2a;
    letter-spacing: .01em
}

.rt .platform-item-txt .fw {
    text-transform: uppercase;
    color: #A3BC4F;
    font-weight: 700
}

.rt .hesit {
    padding: 80px 0;
    background: #E5EEE2
}

.rt .hesit-inner {
    display: flex;
    flex-direction: row;
    gap: 80px;
    align-items: center
}

.rt .hesit-img-col {
    flex: 0 0 380px;
    position: relative
}

.rt .hesit-img-frame {
    width: 380px;
    height: 440px;
    border-radius: 13px;
    overflow: hidden;
    box-shadow: 0 4px 14px -2px #a3bc4f1a;
    position: relative
}

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

.rt .hesit-img-tint {
    position: absolute;
    inset: 0;
    background: linear-gradient(200deg, #a1d7a061 0%, #a1d7a061 45%, #a3bc4f38 45%, #a3bc4f38 100%)
}

.rt .hesit-corner-stripe {
    position: absolute;
    top: 0;
    right: 0;
    width: 60px;
    height: 60px;
    overflow: hidden;
    border-radius: 0 13px 0 0
}

.rt .hesit-corner-stripe::after {
    content: '';
    display: block;
    position: absolute;
    top: -30px;
    right: -30px;
    width: 90px;
    height: 90px;
    background: #A3BC4F;
    transform: rotate(45deg)
}

.rt .hesit-text-col {
    flex: 1
}

.rt .hesit-q {
    font-size: 28px;
    line-height: 1.2;
    font-weight: 800;
    color: #1e2a0e;
    letter-spacing: .01em;
    margin-bottom: 20px
}

.rt .hesit-p {
    font-size: 18px;
    line-height: 1.9;
    color: #3a4d1c;
    letter-spacing: .01em;
    margin-bottom: 20px
}

.rt .hesit-p .fw {
    text-transform: uppercase;
    color: #A3BC4F;
    font-weight: 700
}

.rt .hesit-list {
    list-style: none;
    padding: 0;
    margin: 0 0 20px;
    display: flex;
    flex-direction: column;
    gap: 12px
}

.rt .hesit-list-item {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 12px;
    background: #fff;
    border-radius: 8px;
    padding: 12px 20px;
    box-shadow: 0 3px 6px -2px #a3bc4f14
}

.rt .hesit-list-icon {
    color: #A3BC4F;
    font-size: 18px;
    flex: 0 0 22px;
    margin-top: 2px
}

.rt .hesit-list-txt {
    font-size: 15px;
    line-height: 1.6;
    color: #3a4d1c;
    letter-spacing: .01em
}

.rt .invest {
    padding: 80px 0;
    background: #fff
}

.rt .invest-divider {
    display: flex;
    flex-direction: row;
    align-items: center;
    margin-bottom: 80px
}

.rt .invest-div-line {
    flex: 1;
    height: 1px;
    background: #e0e8d0
}

.rt .invest-div-accent {
    width: 40px;
    height: 3px;
    background: #A1D7A0;
    border-radius: 36px;
    margin: 0 12px
}

.rt .invest-top {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 80px;
    align-items: start;
    margin-bottom: 40px
}

.rt .invest-heading {
    font-size: 38px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: .01em;
    color: #1e2a0e;
    margin-bottom: 20px
}

.rt .invest-lead {
    font-size: 18px;
    line-height: 1.9;
    color: #3a4d1c;
    letter-spacing: .01em
}

.rt .invest-lead .fw {
    text-transform: uppercase;
    color: #A3BC4F;
    font-weight: 700
}

.rt .invest-aside {
    background: #f4f7ee;
    border-radius: 13px;
    padding: 40px;
    box-shadow: 0 3px 6px -2px #a3bc4f14
}

.rt .invest-aside-label {
    font-size: 15px;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: #A3BC4F;
    font-weight: 600;
    margin-bottom: 12px
}

.rt .invest-aside-val {
    font-size: 52px;
    font-weight: 800;
    color: #1e2a0e;
    line-height: 1.2;
    letter-spacing: .01em;
    margin-bottom: 6px
}

.rt .invest-aside-note {
    font-size: 15px;
    color: #4a5e2a;
    line-height: 1.6;
    letter-spacing: .01em
}

.rt .invest-cards {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px
}

.rt .invest-card {
    border-radius: 13px;
    padding: 20px;
    background: #f9fbf5;
    box-shadow: 0 3px 6px -2px #a3bc4f14;
    position: relative;
    overflow: hidden;
    transition: transform .25s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow .25s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.rt .invest-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 48px -2px #a3bc4f1c
}

.rt .invest-card-stripe {
    position: absolute;
    top: 0;
    right: 0;
    width: 48px;
    height: 48px;
    overflow: hidden;
    border-radius: 0 13px 0 0
}

.rt .invest-card-stripe::after {
    content: '';
    display: block;
    position: absolute;
    top: -24px;
    right: -24px;
    width: 70px;
    height: 70px;
    background: #A1D7A0;
    transform: rotate(45deg)
}

.rt .invest-card-icon {
    font-size: 22px;
    color: #A3BC4F;
    margin-bottom: 12px
}

.rt .invest-card-ttl {
    font-size: 18px;
    font-weight: 700;
    color: #1e2a0e;
    margin-bottom: 6px;
    letter-spacing: .01em;
    line-height: 1.2
}

.rt .invest-card-txt {
    font-size: 15px;
    line-height: 1.6;
    color: #4a5e2a;
    letter-spacing: .01em
}

.rt .appr {
    padding: 80px 0;
    background-image: radial-gradient(ellipse at 10% 20%, #a3bc4f2e 0%, #a3bc4f2e 28%, transparent 28%), radial-gradient(ellipse at 85% 70%, #a1d7a038 0%, #a1d7a038 32%, transparent 32%), radial-gradient(ellipse at 50% 50%, #e5eee2f2 0%, #e5eee2f2 60%, transparent 60%), radial-gradient(ellipse at 30% 85%, #a3bc4f1a 0%, #a3bc4f1a 40%, transparent 40%);
    background-color: #f0f5e8
}

.rt .appr-label {
    font-size: 15px;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: #A3BC4F;
    font-weight: 600;
    margin-bottom: 12px;
    text-align: center
}

.rt .appr-heading {
    font-size: 38px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: .01em;
    color: #1e2a0e;
    text-align: center;
    margin-bottom: 40px
}

.rt .appr-spotlight {
    display: grid;
    grid-template-columns: 1.6fr 1fr;
    gap: 40px;
    align-items: start;
    margin-bottom: 40px
}

.rt .appr-featured {
    border-radius: 13px;
    overflow: hidden;
    position: relative;
    box-shadow: 0 8px 48px -2px #a3bc4f1c
}

.rt .appr-featured-img {
    width: 100%;
    height: 380px;
    object-fit: cover;
    display: block
}

.rt .appr-featured-tint {
    position: absolute;
    inset: 0;
    background: linear-gradient(170deg, #a3bc4f47 0%, #a3bc4f47 35%, #a1d7a033 35%, #a1d7a033 100%)
}

.rt .appr-featured-caption {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 40px 20px 20px;
    background: linear-gradient(to top, #1e2a0ed1 0%, #1e2a0ed1 60%, transparent 60%)
}

.rt .appr-featured-caption-ttl {
    font-size: 22px;
    font-weight: 700;
    color: #fff;
    letter-spacing: .01em;
    line-height: 1.2;
    margin-bottom: 6px
}

.rt .appr-featured-caption-txt {
    font-size: 15px;
    color: #c8dba0;
    line-height: 1.6;
    letter-spacing: .01em
}

.rt .appr-side-items {
    display: flex;
    flex-direction: column;
    gap: 20px
}

.rt .appr-side-item {
    background: #fff;
    border-radius: 13px;
    padding: 20px;
    box-shadow: 0 3px 6px -2px #a3bc4f14;
    transition: transform .22s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.rt .appr-side-item:hover {
    transform: translateY(-3px)
}

.rt .appr-side-num {
    font-size: 38px;
    font-weight: 800;
    color: #A3BC4F;
    line-height: 1.2;
    letter-spacing: .01em;
    margin-bottom: 6px
}

.rt .appr-side-ttl {
    font-size: 18px;
    font-weight: 700;
    color: #1e2a0e;
    letter-spacing: .01em;
    margin-bottom: 6px;
    line-height: 1.2
}

.rt .appr-side-txt {
    font-size: 15px;
    line-height: 1.6;
    color: #4a5e2a;
    letter-spacing: .01em
}

.rt .appr-two-col {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px
}

.rt .appr-col-item {
    background: #fff;
    border-radius: 13px;
    padding: 20px;
    box-shadow: 0 3px 6px -2px #a3bc4f14
}

.rt .appr-col-item-ttl {
    font-size: 18px;
    font-weight: 700;
    color: #1e2a0e;
    letter-spacing: .01em;
    margin-bottom: 6px;
    line-height: 1.2
}

.rt .appr-col-item-txt {
    font-size: 15px;
    line-height: 1.6;
    color: #4a5e2a;
    letter-spacing: .01em
}

.rt .appr-col-item-txt .fw {
    text-transform: uppercase;
    color: #A3BC4F;
    font-weight: 700
}

.rt .nums {
    padding: 80px 0;
    background: #fff
}

.rt .nums-divider {
    display: flex;
    flex-direction: row;
    align-items: center;
    margin-bottom: 80px
}

.rt .nums-div-line {
    flex: 1;
    height: 1px;
    background: #e0e8d0
}

.rt .nums-div-accent {
    width: 80px;
    height: 3px;
    background: #A3BC4F;
    border-radius: 36px;
    margin: 0 12px
}

.rt .nums-top {
    display: flex;
    flex-direction: row;
    gap: 80px;
    align-items: flex-start;
    margin-bottom: 80px
}

.rt .nums-text {
    flex: 1
}

.rt .nums-heading {
    font-size: 38px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: .01em;
    color: #1e2a0e;
    margin-bottom: 20px
}

.rt .nums-p {
    font-size: 18px;
    line-height: 1.9;
    color: #3a4d1c;
    letter-spacing: .01em;
    margin-bottom: 20px
}

.rt .nums-p .fw {
    text-transform: uppercase;
    color: #A3BC4F;
    font-weight: 700
}

.rt .nums-link {
    font-size: 15px;
    font-weight: 600;
    color: #A3BC4F;
    text-decoration: underline;
    text-decoration-color: transparent;
    letter-spacing: .02em;
    transition: text-decoration-color .22s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.rt .nums-link:hover {
    text-decoration-color: #A3BC4F
}

.rt .nums-img-col {
    flex: 0 0 360px
}

.rt .nums-img-wrap {
    width: 360px;
    height: 320px;
    border-radius: 13px;
    overflow: hidden;
    position: relative;
    box-shadow: 0 4px 14px -2px #a3bc4f1a
}

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

.rt .nums-img-tint {
    position: absolute;
    inset: 0;
    background: linear-gradient(140deg, #a1d7a04d 0%, #a1d7a04d 40%, #a3bc4f33 40%, #a3bc4f33 100%)
}

.rt .nums-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px
}

.rt .nums-stat {
    background: #f4f7ee;
    border-radius: 13px;
    padding: 40px 20px;
    text-align: center;
    box-shadow: 0 3px 6px -2px #a3bc4f14;
    transition: transform .28s cubic-bezier(0.68, -0.55, 0.27, 1.55), box-shadow .28s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.rt .nums-stat:hover {
    transform: scale(1.04);
    box-shadow: 0 8px 48px -2px #a3bc4f1c
}

.rt .nums-stat-val {
    font-size: 52px;
    font-weight: 800;
    color: #A3BC4F;
    line-height: 1.2;
    letter-spacing: .01em;
    margin-bottom: 6px
}

.rt .nums-stat-lbl {
    font-size: 15px;
    color: #3a4d1c;
    line-height: 1.6;
    letter-spacing: .01em
}

@media (max-width: 1200px) {
    .rt .titl-h1 {
        font-size: 52px
    }

    .rt .titl-right {
        flex: 0 0 340px
    }

    .rt .titl-img-wrap {
        width: 340px;
        height: 400px
    }
}

@media (max-width: 900px) {
    .rt .titl-grid {
        flex-direction: column;
        gap: 40px
    }

    .rt .titl-right {
        flex: 0 0 auto;
        width: 100%
    }

    .rt .titl-img-wrap {
        width: 100%;
        height: 300px
    }

    .rt .titl-h1 {
        font-size: 38px
    }

    .rt .titl-h2 {
        font-size: 28px
    }

    .rt .platform-grid {
        grid-template-columns: 1fr;
        gap: 40px
    }

    .rt .hesit-inner {
        flex-direction: column;
        gap: 40px
    }

    .rt .hesit-img-col {
        flex: 0 0 auto;
        width: 100%
    }

    .rt .hesit-img-frame {
        width: 100%;
        height: 280px
    }

    .rt .invest-top {
        grid-template-columns: 1fr;
        gap: 40px
    }

    .rt .invest-cards {
        grid-template-columns: 1fr 1fr
    }

    .rt .appr-spotlight {
        grid-template-columns: 1fr
    }

    .rt .appr-featured-img {
        height: 260px
    }

    .rt .nums-top {
        flex-direction: column;
        gap: 40px
    }

    .rt .nums-img-col {
        flex: 0 0 auto;
        width: 100%
    }

    .rt .nums-img-wrap {
        width: 100%;
        height: 240px
    }

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

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

    .rt .titl {
        padding: 40px 0 80px
    }

    .rt .titl-h1 {
        font-size: 28px
    }

    .rt .titl-h2 {
        font-size: 22px
    }

    .rt .platform-heading {
        font-size: 28px
    }

    .rt .invest-heading {
        font-size: 28px
    }

    .rt .appr-heading {
        font-size: 28px
    }

    .rt .nums-heading {
        font-size: 28px
    }

    .rt .invest-cards {
        grid-template-columns: 1fr
    }

    .rt .appr-two-col {
        grid-template-columns: 1fr
    }

    .rt .nums-grid {
        grid-template-columns: 1fr 1fr
    }
}

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

.ct-us .split-top {
    display: grid;
    grid-template-columns: 1fr 1fr;
    min-height: 420px;
    position: relative
}

.ct-us .split-left {
    background: #A3BC4F;
    padding: 80px 40px 80px 80px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: relative;
    overflow: hidden
}

.ct-us .split-left::before {
    content: '';
    position: absolute;
    top: -60px;
    right: -60px;
    width: 180px;
    height: 180px;
    border: 2px solid #ffffff2e;
    border-radius: 48px;
    transform: rotate(18deg);
    pointer-events: none
}

.ct-us .split-left::after {
    content: '';
    position: absolute;
    bottom: 20px;
    left: 30px;
    width: 90px;
    height: 90px;
    border: 2px solid #ffffff1f;
    border-radius: 36px;
    transform: rotate(-12deg);
    pointer-events: none
}

.ct-us .split-right {
    background: #E5EEE2;
    padding: 80px 80px 80px 40px;
    display: flex;
    flex-direction: column;
    justify-content: center
}

.ct-us .page-label {
    font-size: 15px;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: #ffffffbf;
    margin-bottom: 20px;
    font-weight: 600
}

.ct-us .page-h1 {
    font-size: 52px;
    line-height: 1.2;
    letter-spacing: .01em;
    color: #fff;
    font-weight: 800;
    margin: 0 0 20px
}

.ct-us .page-h1 .accent-word {
    color: #E5EEE2
}

.ct-us .page-desc {
    font-size: 18px;
    line-height: 1.6;
    color: #ffffffe0;
    margin: 0;
    max-width: 340px
}

.ct-us .quick-points {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 20px
}

.ct-us .quick-points li {
    background: #fff;
    border-radius: 13px;
    padding: 20px;
    box-shadow: 0 3px 6px -2px #a3bc4f14;
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 12px;
    animation: bounce-in .32s cubic-bezier(0.34, 1.56, 0.64, 1) both
}

.ct-us .quick-points li:nth-child(1) {
    animation-delay: .08s
}

.ct-us .quick-points li:nth-child(2) {
    animation-delay: .16s
}

.ct-us .quick-points li:nth-child(3) {
    animation-delay: .24s
}

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

    60% {
        opacity: 1;
        transform: translateY(4px)
    }

    100% {
        transform: translateY(0)
    }
}

.ct-us .pt-icon {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    background: #A3BC4F;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0
}

.ct-us .pt-icon i {
    color: #fff;
    font-size: 18px
}

.ct-us .pt-text {
    display: flex;
    flex-direction: column;
    gap: 6px
}

.ct-us .pt-label {
    font-size: 15px;
    font-weight: 700;
    color: #2d3a1a;
    letter-spacing: .01em
}

.ct-us .pt-val {
    font-size: 15px;
    color: #4a5a2a;
    line-height: 1.6;
    text-decoration: none
}

.ct-us .pt-val:hover {
    color: #A3BC4F;
    transition: color .22s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.ct-us .divider-a {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 40px 0 0
}

.ct-us .divider-a .d-line {
    width: 48px;
    height: 2px;
    background: #A3BC4F;
    border-radius: 8px
}

.ct-us .divider-a .d-dot {
    width: 8px;
    height: 8px;
    border-radius: 48px;
    background: #A1D7A0;
    border: 2px solid #A3BC4F
}

.ct-us .form-band {
    background: #fff;
    padding: 80px 0;
    position: relative
}

.ct-us .form-band::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 50%;
    background: linear-gradient(160deg, #E5EEE2 0%, #E5EEE2 40%, #fff 40%, #fff 100%);
    z-index: 0;
    pointer-events: none
}

.ct-us .form-wrap {
    max-width: 1170px;
    margin: 0 auto;
    padding: 0 40px;
    position: relative;
    z-index: 1
}

.ct-us .form-card {
    background: #fff;
    border-radius: 13px;
    box-shadow: 0 8px 48px -2px #a3bc4f1c;
    padding: 40px;
    display: grid;
    grid-template-columns: 1fr 1.6fr;
    gap: 40px;
    align-items: start
}

.ct-us .form-aside {
    display: flex;
    flex-direction: column;
    gap: 20px
}

.ct-us .form-aside-title {
    font-size: 28px;
    font-weight: 700;
    line-height: 1.2;
    color: #2d3a1a;
    letter-spacing: .01em;
    margin: 0
}

.ct-us .form-aside-title .accent-word {
    color: #A3BC4F
}

.ct-us .form-aside-body {
    font-size: 15px;
    line-height: 1.6;
    color: #4a5a2a;
    margin: 0
}

.ct-us .badge-row {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 6px
}

.ct-us .badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: #E5EEE2;
    border-radius: 36px;
    padding: 6px 12px;
    font-size: 15px;
    color: #2d3a1a;
    font-weight: 500;
    letter-spacing: .01em
}

.ct-us .badge i {
    color: #A3BC4F;
    font-size: 15px
}

.ct-us .form-aside-note {
    font-size: 15px;
    line-height: 1.6;
    color: #6a7a4a;
    margin: 0;
    padding: 12px;
    border-radius: 8px;
    background: #E5EEE2
}

.ct-us .contact-form {
    display: flex;
    flex-direction: column;
    gap: 20px
}

.ct-us .field-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px
}

.ct-us .field-group {
    display: flex;
    flex-direction: column;
    gap: 6px
}

.ct-us .field-group.full {
    grid-column: 1 / -1
}

.ct-us .f-label {
    font-size: 15px;
    font-weight: 600;
    color: #2d3a1a;
    letter-spacing: .01em
}

.ct-us .f-required {
    color: #A3BC4F;
    margin-left: 2px
}

.ct-us .f-input {
    border: 2px solid #E5EEE2;
    border-radius: 8px;
    padding: 12px 20px;
    font-size: 15px;
    color: #2d3a1a;
    background: #fff;
    outline: none;
    transition: border-color .25s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow .25s cubic-bezier(0.34, 1.56, 0.64, 1);
    width: 100%;
    box-sizing: border-box;
    letter-spacing: .01em
}

.ct-us .f-input::placeholder {
    color: #A1D7A0;
    font-style: italic
}

.ct-us .f-input:focus {
    border-color: #A3BC4F;
    box-shadow: 0 4px 14px -2px #a3bc4f1a
}

.ct-us .f-textarea {
    resize: vertical;
    min-height: 100px
}

.ct-us .f-select {
    appearance: none;
    -webkit-appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24'%3E%3Cpath fill='%23A3BC4F' d='M7 10l5 5 5-5z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 12px center;
    padding-right: 40px;
    cursor: pointer
}

.ct-us .privacy-row {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 12px
}

.ct-us .privacy-check {
    width: 20px;
    height: 20px;
    accent-color: #A3BC4F;
    margin-top: 2px;
    flex-shrink: 0;
    cursor: pointer
}

.ct-us .privacy-text {
    font-size: 15px;
    line-height: 1.6;
    color: #4a5a2a
}

.ct-us .privacy-text a {
    color: #A3BC4F;
    text-decoration: underline;
    text-decoration-color: #a3bc4f66;
    transition: text-decoration-color .22s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.ct-us .privacy-text a:hover {
    text-decoration-color: #A3BC4F
}

.ct-us .submit-btn {
    align-self: flex-start;
    background: #A3BC4F;
    color: #fff;
    border: none;
    border-radius: 8px;
    padding: 12px 40px;
    font-size: 18px;
    font-weight: 700;
    letter-spacing: .01em;
    cursor: pointer;
    position: relative;
    overflow: hidden;
    transition: color .28s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow .28s cubic-bezier(0.34, 1.56, 0.64, 1);
    box-shadow: 0 4px 14px -2px #a3bc4f1a
}

.ct-us .submit-btn::before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 0;
    background: #2d3a1a;
    border-radius: 8px;
    transition: height .28s cubic-bezier(0.34, 1.56, 0.64, 1);
    z-index: 0
}

.ct-us .submit-btn:hover::before {
    height: 100%
}

.ct-us .submit-btn:hover {
    box-shadow: 0 8px 48px -2px #a3bc4f1c
}

.ct-us .submit-btn:active {
    box-shadow: inset 0 3px 6px -2px #a3bc4f2e
}

.ct-us .submit-btn span {
    position: relative;
    z-index: 1
}

.ct-us .divider-b {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    padding: 40px 0 0
}

.ct-us .divider-b .db-line {
    width: 32px;
    height: 2px;
    background: #E5EEE2;
    border-radius: 8px
}

.ct-us .divider-b .db-shape {
    width: 10px;
    height: 10px;
    border-radius: 8px;
    background: #A1D7A0;
    transform: rotate(45deg)
}

.ct-us .info-band {
    background: #2d3a1a;
    padding: 80px 0;
    position: relative;
    overflow: hidden
}

.ct-us .info-band::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 320px;
    height: 320px;
    border: 2px solid #a3bc4f1f;
    border-radius: 48px;
    transform: rotate(22deg) translate(80px, -80px);
    pointer-events: none
}

.ct-us .info-band::after {
    content: '';
    position: absolute;
    bottom: -40px;
    left: 60px;
    width: 160px;
    height: 160px;
    border: 2px solid #a1d7a01a;
    border-radius: 36px;
    transform: rotate(-15deg);
    pointer-events: none
}

.ct-us .info-inner {
    max-width: 1170px;
    margin: 0 auto;
    padding: 0 40px;
    display: grid;
    grid-template-columns: 1.2fr 1fr;
    gap: 40px;
    align-items: center
}

.ct-us .info-text-col {
    display: flex;
    flex-direction: column;
    gap: 20px
}

.ct-us .info-h2 {
    font-size: 38px;
    font-weight: 300;
    line-height: 1.2;
    color: #fff;
    letter-spacing: .01em;
    margin: 0
}

.ct-us .info-h2 .accent-word {
    color: #A3BC4F;
    font-weight: 800
}

.ct-us .info-body {
    font-size: 18px;
    line-height: 1.6;
    color: #ffffffb8;
    margin: 0
}

.ct-us .info-img-wrap {
    border-radius: 13px;
    overflow: hidden;
    box-shadow: 0 8px 48px -2px #a3bc4f1c;
    position: relative
}

.ct-us .info-img-wrap img {
    width: 100%;
    height: 300px;
    object-fit: cover;
    display: block;
    filter: saturate(1.1) brightness(0.92) sepia(0.1)
}

.ct-us .info-img-wrap .img-tag {
    position: absolute;
    bottom: 12px;
    left: 12px;
    background: #2d3a1ad1;
    -webkit-backdrop-filter: blur(6px);
    backdrop-filter: blur(6px);
    border-radius: 8px;
    padding: 6px 12px;
    font-size: 15px;
    color: #A1D7A0;
    font-weight: 600;
    letter-spacing: .02em
}

.ct-us .addr-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px
}

.ct-us .addr-card {
    background: #ffffff0f;
    border-radius: 13px;
    padding: 20px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    border: 1px solid #a3bc4f26;
    transition: background .22s cubic-bezier(0.34, 1.56, 0.64, 1), border-color .22s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.ct-us .addr-card:hover {
    background: #a3bc4f1a;
    border-color: #a3bc4f59
}

.ct-us .addr-icon {
    width: 40px;
    height: 40px;
    border-radius: 8px;
    background: #a3bc4f2e;
    display: flex;
    align-items: center;
    justify-content: center
}

.ct-us .addr-icon i {
    color: #A3BC4F;
    font-size: 20px
}

.ct-us .addr-label {
    font-size: 15px;
    font-weight: 700;
    color: #ffffff8c;
    letter-spacing: .06em;
    text-transform: uppercase
}

.ct-us .addr-val {
    font-size: 15px;
    line-height: 1.6;
    color: #fff;
    text-decoration: none;
    letter-spacing: .01em;
    transition: color .22s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.ct-us .addr-val:hover {
    color: #A3BC4F
}

.ct-us .addr-card.full-w {
    grid-column: 1 / -1
}

@media (max-width: 900px) {
    .ct-us .split-top {
        grid-template-columns: 1fr
    }

    .ct-us .split-left {
        padding: 40px 20px
    }

    .ct-us .split-right {
        padding: 40px 20px
    }

    .ct-us .form-card {
        grid-template-columns: 1fr;
        padding: 20px
    }

    .ct-us .field-row {
        grid-template-columns: 1fr
    }

    .ct-us .info-inner {
        grid-template-columns: 1fr;
        padding: 0 20px
    }

    .ct-us .form-wrap {
        padding: 0 20px
    }

    .ct-us .page-h1 {
        font-size: 38px
    }
}

@media (max-width: 600px) {

    .ct-us .split-left,
    .ct-us .split-right {
        padding: 40px 20px
    }

    .ct-us .addr-grid {
        grid-template-columns: 1fr
    }

    .ct-us .addr-card.full-w {
        grid-column: 1
    }

    .ct-us .info-h2 {
        font-size: 28px
    }

    .ct-us .page-h1 {
        font-size: 28px
    }

    .ct-us .badge-row {
        flex-direction: column
    }
}

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

.succ-page .succ-wrap {
    max-width: 560px;
    width: 100%;
    text-align: center;
    padding: 80px 40px;
    background: #E5EEE2;
    border-radius: 13px;
    box-shadow: 0 8px 48px -2px #a3bc4f1c
}

.succ-page .succ-icon {
    width: 64px;
    height: 64px;
    margin: 0 auto 40px;
    background: #A3BC4F;
    border-radius: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: row
}

.succ-page .succ-icon svg {
    width: 30px;
    height: 30px;
    display: block
}

.succ-page .succ-title {
    font-size: 38px;
    line-height: 1.2;
    letter-spacing: .01em;
    color: #2a2a2a;
    font-weight: 700;
    margin: 0 0 20px
}

.succ-page .succ-msg {
    font-size: 18px;
    line-height: 1.6;
    letter-spacing: .01em;
    color: #3d3d3d;
    margin: 0 0 40px
}

.succ-page .succ-link {
    display: inline-block;
    font-size: 15px;
    line-height: 1.6;
    letter-spacing: .02em;
    color: #fff;
    background: #A3BC4F;
    padding: 12px 40px;
    border-radius: 8px;
    text-decoration: none;
    font-weight: 600;
    box-shadow: 0 4px 14px -2px #a3bc4f1a;
    position: relative;
    overflow: hidden;
    transition: color .25s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow .28s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.succ-page .succ-link::before {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 0;
    background: #8aa03a;
    border-radius: 8px;
    transition: height .22s cubic-bezier(0.68, -0.55, 0.27, 1.55);
    z-index: 0
}

.succ-page .succ-link:hover::before {
    height: 100%
}

.succ-page .succ-link:hover {
    box-shadow: 0 8px 48px -2px #a3bc4f1c;
    color: #fff
}

.succ-page .succ-link span {
    position: relative;
    z-index: 1
}

.succ-page .succ-note {
    margin-top: 20px;
    font-size: 15px;
    line-height: 1.6;
    letter-spacing: .01em;
    color: #5a5a5a
}

.succ-page .succ-note a {
    color: #A3BC4F;
    text-decoration: underline;
    text-decoration-color: transparent;
    transition: text-decoration-color .22s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.succ-page .succ-note a:hover {
    text-decoration-color: #A3BC4F
}

@media (max-width: 600px) {
    .succ-page {
        padding: 40px 12px
    }

    .succ-page .succ-wrap {
        padding: 40px 20px
    }

    .succ-page .succ-title {
        font-size: 28px
    }

    .succ-page .succ-msg {
        font-size: 15px
    }
}