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

body {
    margin: 0;
    padding: 0;
    font-family: 'Red Hat Display', sans-serif;
    background-color: #18191b;
    color: #F0EEE9
}

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

.hd-plate {
    width: 100%;
    background: linear-gradient(135deg, #111214 0%, #1e1f22 60%, #23201d 100%);
    border-bottom: 2px solid #B85F40;
    box-shadow: 1px 5px 22px 0 #b85f4014
}

.hd-pod {
    max-width: 1366px;
    margin: 0 auto;
    display: flex;
    align-items: stretch;
    min-height: 110px
}

.hd-brand {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: center;
    padding: 20px 40px 20px 20px;
    border-right: 1px solid #a8844040;
    flex-shrink: 0;
    gap: 10px
}

.hd-logo-cell {
    width: 72px;
    height: 72px;
    background-color: #A88440;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 0;
    box-shadow: 1px 3px 4px 0 #b85f4012 1px 5px 22px 0 #b85f4014;
    flex-shrink: 0
}

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

.hd-brand-name {
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .18em;
    color: #A88440;
    text-transform: uppercase;
    line-height: 1.15;
    text-align: right
}

.hd-right {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    flex: 1;
    padding: 20px 20px 20px 40px
}

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

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

.hd-contact-item {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 14px;
    color: #c8c3bb;
    line-height: 1.4;
    text-decoration: none;
    transition: color .12s cubic-bezier(0.4, 0, 1, 1)
}

.hd-contact-item:hover {
    color: #F0EEE9
}

.hd-contact-icon {
    width: 16px;
    height: 16px;
    flex-shrink: 0
}

.hd-lang {
    display: flex;
    align-items: center;
    gap: 10px
}

.hd-lang-btn {
    font-size: 14px;
    font-weight: 600;
    letter-spacing: .12em;
    color: #F0EEE9;
    background: #b85f4026;
    border: 1px solid #b85f4066;
    border-radius: 6px;
    padding: 10px 20px;
    cursor: pointer;
    min-height: 44px;
    min-width: 44px;
    transition: background .15s cubic-bezier(0.4, 0, 1, 1), border-color .15s cubic-bezier(0.4, 0, 1, 1);
    font-family: 'Red Hat Display', sans-serif
}

.hd-lang-btn:hover {
    background: #b85f404d;
    border-color: #B85F40
}

.hd-nav {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px
}

.hd-nav-link {
    font-size: 14px;
    font-weight: 600;
    letter-spacing: .08em;
    color: #c8c3bb;
    text-decoration: none;
    padding: 10px 20px;
    border-radius: 6px;
    min-height: 44px;
    display: flex;
    align-items: center;
    position: relative;
    transition: color .1s cubic-bezier(0.4, 0, 1, 1), background .1s cubic-bezier(0.4, 0, 1, 1);
    white-space: nowrap
}

.hd-nav-link::after {
    display: block;
    position: absolute;
    bottom: 6px;
    left: 20px;
    right: 20px;
    height: 2px;
    background: #B85F40;
    border-radius: 0;
    transform: scaleX(0);
    transition: transform .12s cubic-bezier(0.4, 0, 1, 1);
    content: ""
}

.hd-nav-link:hover {
    color: #F0EEE9;
    background: #f0eee90a
}

.hd-nav-link:hover::after {
    transform: scaleX(1)
}

.hd-nav-link.active {
    color: #B85F40
}

.hd-nav-link.active::after {
    transform: scaleX(1)
}

.hd-accent-bar {
    width: 3px;
    height: 100%;
    background: linear-gradient(180deg, #B85F40 0%, #A88440 100%);
    flex-shrink: 0;
    align-self: stretch
}

.ft-plate {
    background: linear-gradient(160deg, #111214 0%, #1a1712 100%);
    border-top: 2px solid #a8844059;
    box-shadow: 1px 9px 48px 0 #a884401a;
    position: relative;
    overflow: hidden
}

.ft-deco {
    position: absolute;
    top: 0;
    right: 0;
    width: 320px;
    height: 320px;
    border-radius: 0;
    background: linear-gradient(225deg, #b85f400f 0%, transparent 70%);
    pointer-events: none
}

.ft-deco-line {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 3px;
    background: linear-gradient(90deg, #B85F40 0%, #A88440 50%, transparent 100%);
    pointer-events: none
}

.ft-pod {
    max-width: 1366px;
    margin: 0 auto;
    padding: 80px 40px 40px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px
}

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

.ft-logo-cell {
    width: 72px;
    height: 72px;
    background-color: #B85F40;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 0;
    box-shadow: 1px 3px 4px 0 #b85f4012 1px 9px 48px 0 #b85f401a;
    border: 2px solid #f0eee926
}

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

.ft-brand-label {
    font-size: 22px;
    font-weight: 700;
    letter-spacing: .14em;
    color: #F0EEE9;
    text-transform: uppercase;
    line-height: 1.15;
    text-align: center
}

.ft-brand-desc {
    font-size: 14px;
    color: #9a9590;
    line-height: 1.6;
    text-align: center;
    max-width: 280px
}

.ft-founded {
    font-size: 14px;
    font-weight: 600;
    letter-spacing: .16em;
    color: #A88440;
    text-transform: uppercase;
    line-height: 1.15
}

.ft-contact-links {
    display: flex;
    flex-direction: column;
    gap: 10px;
    align-items: center
}

.ft-clink {
    font-size: 14px;
    color: #c8c3bb;
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 10px;
    transition: color .12s cubic-bezier(0.4, 0, 1, 1);
    line-height: 1.4
}

.ft-clink:hover {
    color: #B85F40
}

.ft-clink-icon {
    width: 14px;
    height: 14px;
    flex-shrink: 0
}

.ft-nav-col {
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding-top: 10px
}

.ft-nav-label {
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .2em;
    color: #A88440;
    text-transform: uppercase;
    line-height: 1.15
}

.ft-nav-list {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 10px
}

.ft-nav-list li {
    display: flex;
    align-items: center;
    gap: 10px
}

.ft-nav-list li::before {
    display: block;
    width: 4px;
    height: 4px;
    background: #B85F40;
    border-radius: 0;
    flex-shrink: 0;
    content: ""
}

.ft-nav-list a {
    font-size: 14px;
    color: #c8c3bb;
    text-decoration: none;
    line-height: 1.4;
    transition: color .1s cubic-bezier(0.4, 0, 1, 1)
}

.ft-nav-list a:hover {
    color: #F0EEE9
}

.ft-divider {
    max-width: 1366px;
    margin: 0 auto;
    padding: 0 40px;
    border-top: 1px solid #a884402e
}

.ft-bottom {
    max-width: 1366px;
    margin: 0 auto;
    padding: 20px 40px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 10px
}

.ft-copy {
    font-size: 14px;
    color: #6a6560;
    line-height: 1.4
}

.ft-addr {
    font-size: 14px;
    color: #6a6560;
    line-height: 1.4;
    text-align: right
}

.ck-tile {
    position: fixed;
    bottom: 20px;
    right: 20px;
    width: 320px;
    background: #1e1f22;
    border: 1px solid #a8844059;
    border-radius: 6px;
    box-shadow: 1px 9px 48px 0 #b85f401a;
    z-index: 4000;
    padding: 20px;
    display: none
}

.ck-tile-head {
    font-size: 14px;
    font-weight: 700;
    color: #F0EEE9;
    line-height: 1.4;
    margin-bottom: 10px
}

.ck-tile-body {
    font-size: 14px;
    color: #9a9590;
    line-height: 1.6;
    margin-bottom: 10px
}

.ck-tile-uses {
    list-style: none;
    margin-bottom: 20px;
    display: flex;
    flex-direction: column;
    gap: 10px
}

.ck-tile-uses li {
    font-size: 14px;
    color: #9a9590;
    line-height: 1.4;
    padding-left: 10px;
    position: relative
}

.ck-tile-uses li::before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 7px;
    width: 3px;
    height: 3px;
    background: #A88440;
    border-radius: 0
}

.ck-prefs {
    display: none;
    flex-direction: column;
    gap: 10px;
    margin-bottom: 20px
}

.ck-prefs.open {
    display: flex
}

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

.ck-toggle-label {
    font-size: 14px;
    color: #c8c3bb;
    line-height: 1.4
}

.ck-toggle-label.required {
    color: #9a9590
}

.ck-toggle-switch {
    position: relative;
    width: 36px;
    height: 20px;
    flex-shrink: 0
}

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

.ck-switch-track {
    position: absolute;
    inset: 0;
    background: #333;
    border-radius: 16px;
    transition: background .15s cubic-bezier(0.4, 0, 1, 1);
    cursor: pointer
}

.ck-switch-track::after {
    content: "";
    display: block;
    position: absolute;
    width: 14px;
    height: 14px;
    background: #6a6560;
    border-radius: 50%;
    top: 3px;
    left: 3px;
    transition: transform .15s cubic-bezier(0.4, 0, 1, 1), background .15s cubic-bezier(0.4, 0, 1, 1)
}

.ck-toggle-switch input:checked+.ck-switch-track {
    background: #b85f4066
}

.ck-toggle-switch input:checked+.ck-switch-track::after {
    transform: translateX(16px);
    background: #B85F40
}

.ck-toggle-switch input:disabled+.ck-switch-track {
    opacity: .5;
    cursor: not-allowed
}

.ck-btns {
    display: flex;
    flex-direction: column;
    gap: 10px
}

.ck-btn-row {
    display: flex;
    gap: 10px
}

.ck-btn {
    flex: 1;
    font-size: 14px;
    font-weight: 600;
    font-family: 'Red Hat Display', sans-serif;
    border-radius: 6px;
    padding: 10px;
    min-height: 44px;
    cursor: pointer;
    border: 1px solid #b85f4080;
    background: transparent;
    color: #F0EEE9;
    transition: background .12s cubic-bezier(0.4, 0, 1, 1), border-color .12s cubic-bezier(0.4, 0, 1, 1);
    letter-spacing: .04em
}

.ck-btn:hover {
    background: #b85f4026;
    border-color: #B85F40
}

.ck-btn:focus-visible {
    outline: 2px solid #B85F40;
    outline-offset: 2px
}

.ck-btn.primary {
    background: #b85f4033;
    border-color: #B85F40
}

.ck-btn.primary:hover {
    background: #b85f4059
}

.ck-settings-link {
    font-size: 14px;
    color: #A88440;
    background: none;
    border: none;
    cursor: pointer;
    font-family: 'Red Hat Display', sans-serif;
    padding: 0;
    text-align: center;
    width: 100%;
    text-decoration: underline;
    transition: color .1s cubic-bezier(0.4, 0, 1, 1)
}

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

.ck-mgr-btn {
    position: fixed;
    bottom: 20px;
    right: 20px;
    width: 44px;
    height: 44px;
    background: #1e1f22;
    border: 1px solid #a8844059;
    border-radius: 6px;
    display: none;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 3999;
    box-shadow: 1px 5px 22px 0 #b85f4014;
    transition: background .12s cubic-bezier(0.4, 0, 1, 1)
}

.ck-mgr-btn:hover {
    background: #b85f4026
}

.ck-mgr-btn svg {
    width: 20px;
    height: 20px
}

@media (max-width: 900px) {
    .hd-pod {
        flex-direction: column;
        min-height: auto
    }

    .hd-brand {
        align-items: flex-start;
        border-right: none;
        border-bottom: 1px solid #a8844040;
        flex-direction: row;
        padding: 20px
    }

    .hd-right {
        padding: 20px
    }

    .hd-top-bar {
        flex-wrap: wrap
    }

    .ft-pod {
        grid-template-columns: 1fr;
        gap: 40px;
        padding: 40px 20px 20px
    }

    .ft-brand-col {
        align-items: flex-start
    }

    .ft-brand-desc {
        text-align: left
    }

    .ft-brand-label {
        text-align: left
    }

    .ft-bottom {
        flex-direction: column;
        align-items: flex-start;
        padding: 20px
    }

    .ft-addr {
        text-align: left
    }

    .ft-divider {
        padding: 0 20px
    }

    .hd-contact-strip {
        flex-wrap: wrap
    }
}

.vo-terms-section {
    max-width: 1366px;
    margin: 0 auto;
    padding: 80px 40px;
    background: #18191b;
    min-height: 100vh
}

.vo-terms-section p {
    font-size: 14px;
    line-height: 1.6;
    color: #F0EEE9;
    margin-bottom: 20px
}

.vo-terms-section ul,
.vo-terms-section ol {
    margin: 20px 0;
    padding-left: 40px
}

.vo-terms-section li {
    font-size: 14px;
    line-height: 1.6;
    color: #F0EEE9;
    margin-bottom: 10px
}

.vo-terms-section ul li {
    list-style-type: disc
}

.vo-terms-section ol li {
    list-style-type: decimal
}

.vo-terms-section a {
    color: #B85F40;
    text-decoration: underline;
    text-underline-offset: 3px;
    transition: color .12s cubic-bezier(0.4, 0, 1, 1)
}

.vo-terms-section a:hover {
    color: #A88440
}

.vo-terms-section a:focus-visible {
    outline: 2px solid #B85F40;
    outline-offset: 2px;
    border-radius: 6px
}

.vo-terms-section hr {
    border: none;
    border-top: 1px solid #2e2f31;
    margin: 40px 0
}

.vo-terms-section div {
    margin-bottom: 40px
}

@media (max-width: 768px) {
    .vo-terms-section {
        padding: 40px 20px
    }
}

.cs-det {
    background: #18181a;
    color: #F0EEE9;
    overflow-x: clip
}

.cs-det .pg-top {
    max-width: 1366px;
    margin: 0 auto;
    padding: 80px 40px;
    display: grid;
    grid-template-columns: 1fr 420px;
    gap: 80px;
    align-items: start;
    position: relative
}

.cs-det .pg-top::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url("data:image/svg+xml,%3Csvg viewBox='0 0 512 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.06'/%3E%3C/svg%3E");
    pointer-events: none;
    z-index: 0;
    border-radius: 0
}

.cs-det .pg-top-left {
    position: relative;
    z-index: 1
}

.cs-det .math-bg {
    position: absolute;
    top: -20px;
    right: -60px;
    font-size: 220px;
    line-height: 1.15;
    color: transparent;
    -webkit-text-stroke: 1px #b85f4017;
    pointer-events: none;
    user-select: none;
    z-index: 0;
    font-weight: 700
}

.cs-det .art-label {
    display: inline-block;
    font-size: 14px;
    line-height: 1.4;
    letter-spacing: .18em;
    text-transform: uppercase;
    color: #A88440;
    margin-bottom: 20px;
    font-weight: 600
}

.cs-det .art-h1 {
    font-size: 56px;
    line-height: 1.15;
    font-weight: 800;
    color: #F0EEE9;
    margin: 0 0 20px;
    letter-spacing: -.01em;
    position: relative;
    z-index: 1
}

.cs-det .sub-line {
    display: block;
    width: 48px;
    height: 2px;
    background: #B85F40;
    margin-bottom: 20px
}

.cs-det .art-sub {
    font-size: 22px;
    line-height: 1.6;
    color: #c8c4bc;
    margin: 0 0 40px;
    position: relative;
    z-index: 1
}

.cs-det .meta-row {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap;
    margin-bottom: 40px
}

.cs-det .meta-item {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 10px;
    font-size: 14px;
    line-height: 1.4;
    color: #8a8680;
    letter-spacing: .06em
}

.cs-det .meta-item svg {
    flex-shrink: 0
}

.cs-det .btn-print {
    display: inline-flex;
    flex-direction: row;
    align-items: center;
    gap: 10px;
    padding: 10px 20px;
    background: linear-gradient(157deg, #B85F40 0%, #b85f4000 60%, #A88440 100%);
    color: #F0EEE9;
    border: 1px solid #b85f4066;
    border-radius: 6px;
    font-size: 14px;
    line-height: 1.4;
    letter-spacing: .08em;
    font-weight: 600;
    cursor: pointer;
    transition: background .15s cubic-bezier(0.4, 0, 1, 1), border-color .12s ease-in;
    text-transform: uppercase
}

.cs-det .btn-print:hover {
    background: linear-gradient(337deg, #B85F40 0%, #b85f4000 60%, #A88440 100%);
    border-color: #a88440b3
}

.cs-det .btn-print:focus {
    outline: 2px solid #A88440;
    outline-offset: 3px
}

.cs-det .btn-print:active {
    border-width: 2px;
    border-color: #B85F40;
    transition: border-width .1s cubic-bezier(0.4, 0, 1, 1)
}

.cs-det .img-col {
    position: relative;
    z-index: 1
}

.cs-det .img-wrap {
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 1px 9px 48px 0 #b85f401a;
    position: relative
}

.cs-det .img-wrap img {
    width: 100%;
    height: 420px;
    object-fit: cover;
    object-position: center top;
    display: block;
    filter: grayscale(100%) contrast(1.15);
    transition: filter .18s cubic-bezier(0.4, 0, 1, 1)
}

.cs-det .img-wrap:hover img {
    filter: grayscale(60%) contrast(1.08)
}

.cs-det .img-caption {
    font-size: 14px;
    line-height: 1.4;
    color: #6e6a64;
    margin-top: 10px;
    letter-spacing: .1em;
    text-transform: uppercase;
    text-align: center
}

.cs-det .divider-svg {
    width: 100%;
    max-width: 1366px;
    margin: 0 auto;
    display: block;
    overflow: hidden
}

.cs-det .art-body-wrap {
    max-width: 1366px;
    margin: 0 auto;
    padding: 80px 40px;
    display: grid;
    grid-template-columns: 1fr 280px;
    gap: 80px;
    align-items: start;
    position: relative
}

.cs-det .art-body-wrap::before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    right: 0;
    bottom: 0;
    transform: translateX(-50%);
    width: 100vw;
    background: radial-gradient(ellipse 60% 50% at 50% 50%, #a884400d 0%, transparent 70%);
    pointer-events: none;
    z-index: 0;
    background-size: 110% 110%;
    animation: bg-breathe 10s ease-in-out infinite
}

@keyframes bg-breathe {

    0%,
    100% {
        background-size: 110% 110%
    }

    50% {
        background-size: 130% 130%
    }
}

.cs-det .art-body {
    position: relative;
    z-index: 1
}

.cs-det .art-body p {
    font-size: 22px;
    line-height: 1.6;
    color: #d4d0c8;
    margin: 0 0 20px
}

.cs-det .art-body h2 {
    font-size: 42px;
    line-height: 1.15;
    font-weight: 800;
    color: #F0EEE9;
    margin: 40px 0 20px;
    letter-spacing: .04em;
    text-transform: uppercase
}

.cs-det .art-body h4 {
    font-size: 22px;
    line-height: 1.4;
    font-weight: 700;
    color: #F0EEE9;
    margin: 40px 0 10px;
    letter-spacing: .08em;
    text-transform: uppercase
}

.cs-det .art-body mark {
    background: #b85f4038;
    color: #F0EEE9 !important;
    border-radius: 0;
    padding: 0 4px
}

.cs-det .art-body ul {
    margin: 0 0 20px 20px;
    padding: 0
}

.cs-det .art-body li {
    font-size: 22px;
    line-height: 1.6;
    color: #d4d0c8;
    margin-bottom: 10px;
    padding-left: 10px;
    list-style: none;
    position: relative
}

.cs-det .art-body li::before {
    content: "";
    display: inline-block;
    width: 6px;
    height: 6px;
    border-radius: 0;
    background: #B85F40;
    position: absolute;
    left: -14px;
    top: 11px
}

.cs-det .art-body table {
    width: 100%;
    border-collapse: collapse;
    margin: 40px 0;
    font-size: 14px;
    line-height: 1.6
}

.cs-det .art-body caption {
    font-size: 14px;
    line-height: 1.4;
    color: #8a8680;
    letter-spacing: .1em;
    text-transform: uppercase;
    text-align: left;
    margin-bottom: 10px
}

.cs-det .art-body td {
    padding: 10px 20px;
    color: #d4d0c8;
    border-bottom: 1px solid #f0eee912
}

.cs-det .art-body tr:first-child td {
    color: #F0EEE9;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
    border-bottom: 1px solid #b85f404d
}

.cs-det .art-body blockquote {
    margin: 40px 0;
    padding: 20px 40px;
    border-top: 2px solid #B85F40;
    border-bottom: 1px solid #b85f4033;
    position: relative
}

.cs-det .art-body blockquote p {
    font-size: 22px;
    line-height: 1.6;
    color: #F0EEE9;
    font-style: italic;
    margin: 0 0 10px
}

.cs-det .art-body cite {
    font-size: 14px;
    line-height: 1.4;
    color: #A88440;
    letter-spacing: .1em;
    text-transform: uppercase;
    font-style: normal
}

.cs-det .art-body time {
    font-size: 14px;
    color: #8a8680
}

.cs-det .aside-col {
    position: relative;
    z-index: 1
}

.cs-det .aside-stick {
    position: sticky;
    top: 40px;
    display: flex;
    flex-direction: column;
    gap: 40px
}

.cs-det .aside-divider {
    width: 1px;
    background: linear-gradient(157deg, #b85f4080 0%, #a8844000 60%, #a884404d 100%);
    position: absolute;
    left: -40px;
    top: 0;
    bottom: 0
}

.cs-det .aside-block {
    padding: 20px;
    background: #f0eee908;
    border-radius: 6px;
    box-shadow: 1px 5px 22px 0 #b85f4014
}

.cs-det .aside-block-label {
    font-size: 14px;
    line-height: 1.4;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: #A88440;
    font-weight: 700;
    margin-bottom: 10px
}

.cs-det .aside-block p {
    font-size: 14px;
    line-height: 1.6;
    color: #9e9990;
    margin: 0
}

.cs-det .aside-block a {
    color: #B85F40;
    text-decoration: none;
    transition: opacity .12s ease-in
}

.cs-det .aside-block a:hover {
    opacity: .7
}

.cs-det .nav-links {
    display: flex;
    flex-direction: column;
    gap: 10px
}

.cs-det .nav-link {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 10px;
    padding: 10px;
    color: #c8c4bc;
    text-decoration: none;
    font-size: 14px;
    line-height: 1.4;
    border-radius: 6px;
    letter-spacing: .04em;
    transition: color .12s ease-in, background .15s cubic-bezier(0.4, 0, 1, 1)
}

.cs-det .nav-link:hover {
    color: #F0EEE9;
    background: #b85f401a
}

@media (max-width: 1024px) {
    .cs-det .pg-top {
        grid-template-columns: 1fr;
        gap: 40px;
        padding: 40px 20px
    }

    .cs-det .art-body-wrap {
        grid-template-columns: 1fr;
        gap: 40px;
        padding: 40px 20px 80px
    }

    .cs-det .aside-divider {
        display: none
    }

    .cs-det .aside-stick {
        position: static
    }

    .cs-det .art-h1 {
        font-size: 42px
    }

    .cs-det .math-bg {
        font-size: 120px;
        right: 0
    }
}

@media (max-width: 600px) {
    .cs-det .art-h1 {
        font-size: 42px
    }

    .cs-det .art-body h2 {
        font-size: 42px
    }

    .cs-det .img-wrap img {
        height: 260px
    }

    .cs-det .pg-top {
        padding: 40px 20px
    }

    .cs-det .art-body-wrap {
        padding: 40px 20px
    }
}

@media print {
    .cs-det .btn-print {
        display: none
    }

    .cs-det .aside-col {
        display: none
    }

    .cs-det {
        background: #fff;
        color: #111
    }
}

.ct-us {
    background: #181716;
    color: #F0EEE9;
    overflow-x: clip;
    position: relative
}

.ct-us .pg-top {
    max-width: 1366px;
    margin: 0 auto;
    padding: 80px 40px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
    align-items: start;
    position: relative
}

.ct-us .dot-grid {
    position: absolute;
    top: 0;
    left: 0;
    width: 340px;
    height: 340px;
    pointer-events: none;
    overflow: hidden
}

.ct-us .dot-grid svg {
    width: 100%;
    height: 100%;
    opacity: .18
}

.ct-us .pg-top__left {
    position: relative;
    z-index: 2
}

.ct-us .pg-top__eyebrow {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 20px
}

.ct-us .eyebrow-shape {
    width: 18px;
    height: 18px;
    flex-shrink: 0
}

.ct-us .eyebrow-lbl {
    font-size: 14px;
    letter-spacing: .18em;
    text-transform: uppercase;
    color: #A88440;
    line-height: 1.15
}

.ct-us .pg-top__h1 {
    font-size: 56px;
    line-height: 1.15;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: #F0EEE9;
    margin: 0 0 20px
}

.ct-us .pg-top__h1 span {
    color: #B85F40
}

.ct-us .pg-top__sub {
    font-size: 14px;
    line-height: 1.6;
    color: #b8b4ac;
    max-width: 360px;
    margin: 0 0 40px
}

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

.ct-us .info-list__item {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 10px
}

.ct-us .info-list__icon {
    width: 32px;
    height: 32px;
    flex-shrink: 0;
    border-radius: 6px;
    background: linear-gradient(157deg, #B85F40 0%, transparent 60%, #A88440 100%);
    display: flex;
    align-items: center;
    justify-content: center
}

.ct-us .info-list__icon svg {
    width: 16px;
    height: 16px
}

.ct-us .info-list__text {
    font-size: 14px;
    line-height: 1.6;
    color: #d4cfc7
}

.ct-us .info-list__text a {
    color: #F0EEE9;
    text-decoration: none;
    transition: opacity .12s cubic-bezier(0.4, 0, 1, 1)
}

.ct-us .info-list__text a:hover {
    opacity: .65
}

.ct-us .info-list__label {
    font-size: 14px;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: #A88440;
    display: block;
    margin-bottom: 4px
}

.ct-us .img-card {
    position: relative;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 1px 9px 48px 0 #b85f401a;
    aspect-ratio: 4/3;
    border-trace-anim: active
}

.ct-us .img-card::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(157deg, #b85f4061 0%, transparent 55%, #a8844038 100%);
    z-index: 1;
    border-radius: 16px
}

.ct-us .img-card__photo {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top;
    display: block;
    filter: saturate(0.7) brightness(0.72)
}

.ct-us .img-card__badge {
    position: absolute;
    bottom: 20px;
    left: 20px;
    z-index: 2;
    background: #181716d1;
    border: 1px solid #b85f404d;
    border-radius: 6px;
    padding: 10px 20px;
    font-size: 14px;
    color: #F0EEE9;
    letter-spacing: .08em
}

.ct-us .trace-ring {
    position: absolute;
    top: -1px;
    left: -1px;
    right: -1px;
    bottom: -1px;
    border-radius: 16px;
    border: 2px solid transparent;
    animation: trace-draw .18s cubic-bezier(0.4, 0, 1, 1) forwards;
    z-index: 3;
    pointer-events: none
}

@keyframes trace-draw {
    from {
        border-color: transparent;
        box-shadow: none
    }

    to {
        border-color: #b85f4073;
        box-shadow: 1px 5px 22px 0 #b85f4014
    }
}

.ct-us .divider-dbl {
    max-width: 1366px;
    margin: 0 auto;
    padding: 0 40px
}

.ct-us .divider-dbl__lines {
    border-top: 1px solid #a8844038;
    margin-bottom: 4px;
    border-bottom: 1px solid #a884401a;
    height: 4px
}

.ct-us .form-sec {
    background: linear-gradient(157deg, #221e1b 0%, #1e1c1a 40%, transparent 80%, #1a1917 100%);
    position: relative
}

.ct-us .form-sec::before {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse 60% 40% at 80% 20%, #a8844012 0%, transparent 70%), radial-gradient(ellipse 40% 60% at 10% 80%, #b85f400f 0%, transparent 70%);
    pointer-events: none
}

.ct-us .form-sec__inner {
    max-width: 1366px;
    margin: 0 auto;
    padding: 80px 40px;
    display: grid;
    grid-template-columns: 280px 1fr;
    gap: 80px;
    position: relative;
    z-index: 1
}

.ct-us .form-sidebar {
    background: #b85f4014;
    border-radius: 16px;
    padding: 40px 20px;
    border: 1px solid #b85f402e;
    box-shadow: 1px 3px 4px 0 #b85f4012;
    display: flex;
    flex-direction: column;
    gap: 40px;
    align-self: start
}

.ct-us .form-sidebar__h {
    font-size: 22px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: #F0EEE9;
    line-height: 1.15;
    margin: 0
}

.ct-us .form-sidebar__p {
    font-size: 14px;
    line-height: 1.6;
    color: #b8b4ac;
    margin: 0
}

.ct-us .progress-rings {
    display: flex;
    flex-direction: column;
    gap: 20px
}

.ct-us .ring-row {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 10px
}

.ct-us .ring-svg {
    width: 56px;
    height: 56px;
    flex-shrink: 0
}

.ct-us .ring-track {
    fill: none;
    stroke: #f0eee914;
    stroke-width: 5
}

.ct-us .ring-fill {
    fill: none;
    stroke-width: 5;
    stroke-linecap: round;
    transform: rotate(-90deg);
    transform-origin: 50% 50%;
    transition: stroke-dashoffset .16s cubic-bezier(0.4, 0, 1, 1)
}

.ct-us .ring-fill--a {
    stroke: #B85F40
}

.ct-us .ring-fill--b {
    stroke: #A88440
}

.ct-us .ring-fill--c {
    stroke: #B85F40
}

.ct-us .ring-info__pct {
    font-size: 22px;
    font-weight: 800;
    color: #F0EEE9;
    line-height: 1.15
}

.ct-us .ring-info__lbl {
    font-size: 14px;
    color: #b8b4ac;
    line-height: 1.4
}

.ct-us .form-main {
    display: flex;
    flex-direction: column;
    gap: 40px
}

.ct-us .form-main__h {
    font-size: 42px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .05em;
    color: #F0EEE9;
    line-height: 1.15;
    margin: 0
}

.ct-us .form-main__h span {
    color: #B85F40
}

.ct-us .form-accent {
    width: 40px;
    height: 3px;
    background: linear-gradient(157deg, #B85F40 0%, #A88440 100%);
    border-radius: 0;
    margin-bottom: 0
}

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

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

.ct-us .field-grp {
    display: flex;
    flex-direction: column;
    gap: 10px
}

.ct-us .field-grp label {
    font-size: 14px;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: #A88440;
    line-height: 1.15
}

.ct-us .field-grp input[type="text"],
.ct-us .field-grp input[type="email"],
.ct-us .field-grp input[type="tel"] {
    background: #f0eee90d;
    border: 1px solid #f0eee924;
    border-radius: 6px;
    padding: 10px 20px;
    font-size: 14px;
    color: #F0EEE9;
    line-height: 1.6;
    outline: none;
    transition: border-color .12s cubic-bezier(0.4, 0, 1, 1), box-shadow .12s cubic-bezier(0.4, 0, 1, 1);
    box-shadow: inset 0 1px 3px #b85f4012;
    width: 100%;
    box-sizing: border-box
}

.ct-us .field-grp input[type="text"]::placeholder,
.ct-us .field-grp input[type="email"]::placeholder,
.ct-us .field-grp input[type="tel"]::placeholder {
    color: #f0eee94d
}

.ct-us .field-grp input[type="text"]:focus,
.ct-us .field-grp input[type="email"]:focus,
.ct-us .field-grp input[type="tel"]:focus {
    border-color: #b85f408c;
    box-shadow: inset 0 1px 3px #b85f401a 1px 3px 4px 0 #b85f4012
}

.ct-us .radio-grp {
    display: flex;
    flex-direction: column;
    gap: 10px
}

.ct-us .radio-grp__lbl {
    font-size: 14px;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: #A88440;
    line-height: 1.15
}

.ct-us .radio-opts {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 10px
}

.ct-us .radio-opt {
    position: relative
}

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

.ct-us .radio-opt label {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 10px 20px;
    border-radius: 6px;
    border: 1px solid #f0eee924;
    background: #f0eee90a;
    font-size: 14px;
    color: #d4cfc7;
    cursor: pointer;
    line-height: 1.4;
    transition: border-color .14s cubic-bezier(0.4, 0, 1, 1), background .14s cubic-bezier(0.4, 0, 1, 1), color .14s cubic-bezier(0.4, 0, 1, 1);
    letter-spacing: 0;
    text-transform: none
}

.ct-us .radio-opt label::before {
    content: "";
    width: 14px;
    height: 14px;
    border-radius: 50%;
    border: 2px solid #f0eee94d;
    flex-shrink: 0;
    transition: border-color .12s cubic-bezier(0.4, 0, 1, 1), background .12s cubic-bezier(0.4, 0, 1, 1);
    display: inline-block
}

.ct-us .radio-opt input[type="radio"]:checked+label {
    border-color: #b85f4099;
    background: #b85f401a;
    color: #F0EEE9
}

.ct-us .radio-opt input[type="radio"]:checked+label::before {
    border-color: #B85F40;
    background: #B85F40
}

.ct-us .radio-opt input[type="radio"]:focus+label {
    outline: 2px solid #B85F40;
    outline-offset: 2px
}

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

.ct-us .privacy-row input[type="checkbox"] {
    width: 18px;
    height: 18px;
    flex-shrink: 0;
    margin-top: 2px;
    accent-color: #B85F40;
    cursor: pointer
}

.ct-us .privacy-row__text {
    font-size: 14px;
    line-height: 1.6;
    color: #b8b4ac
}

.ct-us .privacy-row__text a {
    color: #A88440;
    text-decoration: underline;
    text-underline-offset: 3px;
    transition: opacity .12s cubic-bezier(0.4, 0, 1, 1)
}

.ct-us .privacy-row__text a:hover {
    opacity: .7
}

.ct-us .submit-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 10px 40px;
    border-radius: 6px;
    border: none;
    background: linear-gradient(157deg, #B85F40 0%, #A88440 100%);
    color: #F0EEE9;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
    cursor: pointer;
    box-shadow: 1px 5px 22px 0 #b85f4014;
    transition: background .16s cubic-bezier(0.4, 0, 1, 1), box-shadow .16s cubic-bezier(0.4, 0, 1, 1);
    align-self: flex-start
}

.ct-us .submit-btn:hover {
    background: linear-gradient(337deg, #B85F40 0%, #A88440 100%);
    box-shadow: 1px 9px 48px 0 #b85f401a
}

.ct-us .submit-btn:focus {
    outline: 2px solid #A88440;
    outline-offset: 3px
}

.ct-us .submit-btn:active {
    box-shadow: 1px 3px 4px 0 #b85f4012
}

.ct-us .submit-btn svg {
    width: 16px;
    height: 16px
}

.ct-us .dot-border {
    position: absolute;
    pointer-events: none;
    overflow: hidden
}

.ct-us .dot-border--tr {
    top: 0;
    right: 0;
    width: 200px;
    height: 200px
}

.ct-us .dot-border--bl {
    bottom: 0;
    left: 0;
    width: 160px;
    height: 160px
}

@media (max-width: 900px) {
    .ct-us .pg-top {
        grid-template-columns: 1fr;
        gap: 40px;
        padding: 40px 20px
    }

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

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

    .ct-us .pg-top__h1 {
        font-size: 42px
    }

    .ct-us .form-main__h {
        font-size: 42px
    }
}

@media (max-width: 600px) {
    .ct-us .radio-opts {
        flex-direction: column
    }

    .ct-us .pg-top__h1 {
        font-size: 42px
    }

    .ct-us .form-main__h {
        font-size: 22px
    }
}

.cs-pg {
    background: #18181a;
    color: #F0EEE9;
    overflow-x: clip
}

.cs-pg .reveal-mask {
    animation: maskReveal .16s cubic-bezier(0.4, 0, 1, 1) both
}

@keyframes maskReveal {
    from {
        clip-path: inset(0 50% 0 50%);
        opacity: .4
    }

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

.cs-pg .pg-top {
    position: relative;
    padding: 80px 40px;
    background: #111113;
    overflow: hidden
}

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

.cs-pg .pg-top::after {
    content: '';
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 100%;
    height: 60px;
    background: #18181a;
    clip-path: ellipse(55% 100% at 50% 100%)
}

.cs-pg .pg-top-inner {
    max-width: 1366px;
    margin: 0 auto;
    position: relative;
    z-index: 1
}

.cs-pg .pg-top h1 {
    font-size: 56px;
    line-height: 1.15;
    font-weight: 800;
    letter-spacing: .04em;
    text-transform: uppercase;
    color: #F0EEE9;
    margin: 0
}

.cs-pg .pg-top h1 span {
    color: #B85F40
}

.cs-pg .top-accent {
    width: 48px;
    height: 3px;
    background: linear-gradient(157deg, #B85F40 0%, transparent 60%, #A88440 100%);
    margin-bottom: 20px;
    border-radius: 0
}

.cs-pg .posts-area {
    max-width: 1366px;
    margin: 0 auto;
    padding: 80px 40px
}

.cs-pg .posts-area h2 {
    font-size: 22px;
    line-height: 1.4;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: #F0EEE9;
    margin: 0 0 40px
}

.cs-pg .cards-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px
}

@media (max-width: 900px) {
    .cs-pg .cards-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px
    }
}

@media (max-width: 560px) {
    .cs-pg .cards-grid {
        grid-template-columns: 1fr;
        gap: 20px
    }

    .cs-pg .pg-top h1 {
        font-size: 42px
    }

    .cs-pg .posts-area {
        padding: 40px 20px
    }
}

.cs-pg .post-card {
    background: #212024;
    border-radius: 16px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    box-shadow: 1px 5px 22px 0 #b85f4014;
    transition: box-shadow .15s cubic-bezier(0.4, 0, 1, 1), transform .12s cubic-bezier(0.4, 0, 1, 1);
    text-decoration: none;
    color: #F0EEE9
}

.cs-pg .post-card:hover {
    box-shadow: 1px 9px 48px 0 #b85f401a;
    transform: translateY(-4px)
}

.cs-pg .post-card:active {
    background: #2e2b2a
}

.cs-pg .card-img-wrap {
    width: 100%;
    aspect-ratio: 16/9;
    overflow: hidden;
    flex-shrink: 0
}

.cs-pg .card-img-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
    transition: transform .15s cubic-bezier(0.4, 0, 1, 1), brightness .12s ease-in
}

.cs-pg .post-card:hover .card-img-wrap img {
    transform: scale(1.04);
    filter: brightness(1.08)
}

.cs-pg .card-body {
    padding: 20px;
    display: flex;
    flex-direction: column;
    flex: 1;
    gap: 10px
}

.cs-pg .card-sub {
    font-size: 14px;
    line-height: 1.4;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: #A88440;
    font-weight: 600
}

.cs-pg .card-ttl {
    font-size: 22px;
    line-height: 1.4;
    font-weight: 700;
    color: #F0EEE9;
    margin: 0
}

.cs-pg .card-desc {
    font-size: 14px;
    line-height: 1.6;
    color: #b8b5af;
    margin: 0;
    flex: 1
}

.cs-pg .card-meta {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 20px;
    padding-top: 10px;
    border-top: 1px solid #2e2b28
}

.cs-pg .card-date {
    font-size: 14px;
    line-height: 1.4;
    color: #7a7672;
    letter-spacing: .06em
}

.cs-pg .card-stats {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 10px;
    margin-left: auto
}

.cs-pg .stat-item {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 6px;
    font-size: 14px;
    line-height: 1.4;
    color: #7a7672
}

.cs-pg .stat-item svg {
    flex-shrink: 0
}

.cs-pg .card-cta {
    display: inline-flex;
    flex-direction: row;
    align-items: center;
    gap: 6px;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .08em;
    color: #B85F40;
    text-decoration: none;
    text-transform: uppercase;
    transition: opacity .12s ease-in
}

.cs-pg .card-cta:hover {
    opacity: .7
}

.cs-pg .experts-strip {
    background: linear-gradient(157deg, #B85F40 0%, transparent 55%, #A88440 100%);
    padding: 80px 40px
}

.cs-pg .experts-inner {
    max-width: 1366px;
    margin: 0 auto;
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 40px
}

@media (max-width: 760px) {
    .cs-pg .experts-inner {
        flex-direction: column
    }

    .cs-pg .experts-strip {
        padding: 40px 20px
    }
}

.cs-pg .experts-txt {
    flex: 1
}

.cs-pg .experts-txt h2 {
    font-size: 42px;
    line-height: 1.15;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .05em;
    color: #F0EEE9;
    margin: 0 0 20px
}

.cs-pg .experts-txt p {
    font-size: 14px;
    line-height: 1.6;
    color: #F0EEE9;
    margin: 0 0 20px;
    max-width: 480px
}

.cs-pg .experts-portraits {
    display: flex;
    flex-direction: row;
    gap: 20px;
    flex-shrink: 0
}

.cs-pg .portrait-card {
    display: flex;
    flex-direction: column;
    gap: 10px;
    align-items: flex-start
}

.cs-pg .portrait-wrap {
    width: 140px;
    height: 196px;
    border-radius: 0;
    overflow: hidden;
    flex-shrink: 0;
    box-shadow: 1px 9px 48px 0 #a884401a
}

.cs-pg .portrait-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
    transition: transform .15s cubic-bezier(0.4, 0, 1, 1)
}

.cs-pg .portrait-wrap:hover img {
    transform: scale(1.05)
}

.cs-pg .portrait-name {
    font-size: 14px;
    line-height: 1.4;
    font-weight: 700;
    color: #F0EEE9;
    letter-spacing: .06em
}

.cs-pg .portrait-role {
    font-size: 14px;
    line-height: 1.4;
    color: #F0EEE9;
    opacity: .7
}

.cs-pg .metric-row {
    max-width: 1366px;
    margin: 0 auto;
    padding: 80px 40px;
    display: flex;
    flex-direction: row;
    gap: 40px;
    align-items: flex-start
}

@media (max-width: 800px) {
    .cs-pg .metric-row {
        flex-direction: column;
        padding: 40px 20px
    }
}

.cs-pg .metric-txt {
    flex: 1
}

.cs-pg .metric-txt h2 {
    font-size: 42px;
    line-height: 1.15;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .05em;
    color: #F0EEE9;
    margin: 0 0 20px
}

.cs-pg .metric-accent {
    width: 40px;
    height: 3px;
    background: #B85F40;
    margin-bottom: 20px;
    border-radius: 0
}

.cs-pg .metric-txt p {
    font-size: 14px;
    line-height: 1.6;
    color: #b8b5af;
    margin: 0;
    max-width: 400px
}

.cs-pg .metric-nums {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 20px
}

.cs-pg .num-item {
    display: flex;
    flex-direction: column;
    gap: 6px
}

.cs-pg .num-val {
    font-size: 42px;
    line-height: 1.15;
    font-weight: 800;
    color: #B85F40;
    letter-spacing: .02em
}

.cs-pg .num-label {
    font-size: 14px;
    line-height: 1.4;
    color: #b8b5af;
    letter-spacing: .1em;
    text-transform: uppercase
}

.cs-pg .num-bar-bg {
    width: 100%;
    height: 3px;
    background: #2e2b28;
    border-radius: 0
}

.cs-pg .num-bar-fill {
    height: 3px;
    border-radius: 0;
    background: linear-gradient(157deg, #B85F40 0%, transparent 70%, #A88440 100%)
}

.cs-pg .showcase-block {
    background: #111113;
    padding: 80px 40px
}

.cs-pg .showcase-inner {
    max-width: 1366px;
    margin: 0 auto;
    display: flex;
    flex-direction: row;
    gap: 40px;
    align-items: stretch
}

@media (max-width: 800px) {
    .cs-pg .showcase-inner {
        flex-direction: column
    }

    .cs-pg .showcase-block {
        padding: 40px 20px
    }
}

.cs-pg .showcase-img-col {
    flex: 1;
    min-width: 0;
    border-radius: 16px;
    overflow: hidden;
    position: relative
}

.cs-pg .showcase-img-col img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center top;
    display: block;
    min-height: 320px;
    transition: transform .15s cubic-bezier(0.4, 0, 1, 1)
}

.cs-pg .showcase-img-col:hover img {
    transform: scale(1.03)
}

.cs-pg .img-grad {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 60%;
    background: linear-gradient(to top, #111113 0%, transparent 100%);
    pointer-events: none
}

.cs-pg .showcase-txt-col {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 20px;
    justify-content: center
}

.cs-pg .showcase-txt-col h2 {
    font-size: 42px;
    line-height: 1.15;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .05em;
    color: #F0EEE9;
    margin: 0
}

.cs-pg .showcase-accent {
    width: 40px;
    height: 3px;
    background: #A88440;
    border-radius: 0
}

.cs-pg .showcase-txt-col p {
    font-size: 14px;
    line-height: 1.6;
    color: #b8b5af;
    margin: 0
}

.cs-pg .mini-card {
    background: #212024;
    border-radius: 6px;
    padding: 20px;
    box-shadow: 1px 3px 4px 0 #b85f4012;
    border-top: 3px solid #B85F40
}

.cs-pg .mini-card h4 {
    font-size: 14px;
    line-height: 1.4;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .1em;
    color: #B85F40;
    margin: 0 0 10px
}

.cs-pg .mini-card p {
    font-size: 14px;
    line-height: 1.6;
    color: #b8b5af;
    margin: 0
}

.cs-pg .cta-btn {
    display: inline-flex;
    flex-direction: row;
    align-items: center;
    gap: 10px;
    padding: 10px 20px;
    background: linear-gradient(157deg, #B85F40 0%, #A88440 100%);
    color: #F0EEE9;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
    border-radius: 6px;
    border: none;
    cursor: pointer;
    text-decoration: none;
    transition: background .12s ease-in, transform .1s cubic-bezier(0.4, 0, 1, 1);
    box-shadow: 1px 5px 22px 0 #b85f4014;
    align-self: flex-start
}

.cs-pg .cta-btn:hover {
    background: linear-gradient(337deg, #B85F40 0%, #A88440 100%);
    transform: translateY(-2px)
}

.cs-pg .cta-btn:active {
    background: linear-gradient(157deg, #A88440 0%, #B85F40 100%);
    transform: translateY(0)
}

.opn {
    background: #18181a;
    color: #F0EEE9;
    overflow-x: clip;
    position: relative
}

.opn .opn-schema {
    display: none
}

.opn .ttl {
    padding: 80px 40px 40px;
    max-width: 1366px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    align-items: end;
    position: relative
}

.opn .ttl__grid-bg {
    position: absolute;
    inset: 0;
    background-image: linear-gradient(#f0eee90a 1px, transparent 1px), linear-gradient(90deg, #f0eee90a 1px, transparent 1px);
    background-size: 60px 60px;
    pointer-events: none
}

.opn .ttl__txt {
    padding-bottom: 40px;
    animation: opn-blur .18s cubic-bezier(0.4, 0, 1, 1) both;
    animation-delay: .05s
}

.opn .ttl__eyebrow {
    font-size: 14px;
    letter-spacing: .18em;
    text-transform: uppercase;
    color: #A88440;
    margin-bottom: 20px;
    line-height: 1.4
}

.opn .ttl__h1 {
    font-size: 56px;
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: -.01em;
    color: #F0EEE9;
    margin-bottom: 20px
}

.opn .ttl__h1 span {
    color: #B85F40
}

.opn .ttl__desc {
    font-size: 22px;
    line-height: 1.6;
    color: #c8c5be;
    max-width: 480px;
    margin-bottom: 40px
}

.opn .ttl__cta {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: linear-gradient(157deg, #B85F40 0%, transparent 60%, #A88440 100%);
    color: #F0EEE9;
    border: none;
    border-radius: 6px;
    padding: 20px 40px;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
    cursor: pointer;
    text-decoration: none;
    transition: background .15s cubic-bezier(0.4, 0, 1, 1)
}

.opn .ttl__cta:hover {
    background: linear-gradient(337deg, #B85F40 0%, transparent 60%, #A88440 100%)
}

.opn .ttl__cta svg {
    width: 16px;
    height: 16px;
    fill: none;
    stroke: #F0EEE9;
    stroke-width: 2
}

.opn .ttl__img-col {
    position: relative;
    animation: opn-blur .18s cubic-bezier(0.4, 0, 1, 1) both;
    animation-delay: .12s
}

.opn .ttl__img-wrap {
    border-radius: 16px;
    overflow: hidden;
    position: relative
}

.opn .ttl__img-wrap img {
    width: 100%;
    height: 520px;
    object-fit: cover;
    object-position: center top;
    display: block
}

.opn .ttl__img-grain {
    position: absolute;
    inset: 0;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)' opacity='0.12'/%3E%3C/svg%3E");
    pointer-events: none;
    border-radius: 16px
}

.opn .ttl__img-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(157deg, #b85f401f 0%, transparent 60%);
    pointer-events: none;
    border-radius: 16px
}

@keyframes opn-blur {
    from {
        filter: blur(6px);
        opacity: 0
    }

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

.opn .val {
    background: #111113;
    padding: 80px 40px;
    position: relative
}

.opn .val::before {
    content: '';
    display: block;
    height: 2px;
    width: 80px;
    background: linear-gradient(157deg, #B85F40, #A88440);
    margin: 0 auto 40px
}

.opn .val__inner {
    max-width: 1366px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 340px 1fr;
    gap: 80px;
    align-items: start
}

.opn .val__sidebar {
    display: grid;
    gap: 20px
}

.opn .val__label {
    font-size: 14px;
    letter-spacing: .18em;
    text-transform: uppercase;
    color: #A88440;
    line-height: 1.4
}

.opn .val__h2 {
    font-size: 42px;
    font-weight: 800;
    line-height: 1.15;
    color: #F0EEE9;
    text-transform: uppercase;
    letter-spacing: .04em
}

.opn .val__sidebar-img {
    border-radius: 16px;
    overflow: hidden;
    margin-top: 20px
}

.opn .val__sidebar-img img {
    width: 100%;
    height: 240px;
    object-fit: cover;
    object-position: center;
    display: block
}

.opn .val__body {
    display: grid;
    gap: 40px
}

.opn .val__metric-row {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 20px
}

.opn .val__metric {
    background: #18181a;
    border-radius: 16px;
    padding: 40px 20px;
    box-shadow: 1px 5px 22px 0 #b85f4014;
    position: relative;
    overflow: hidden
}

.opn .val__metric-num {
    font-size: 56px;
    font-weight: 800;
    line-height: 1.15;
    color: #B85F40;
    display: block
}

.opn .val__metric-desc {
    font-size: 14px;
    line-height: 1.6;
    color: #c8c5be;
    margin-top: 10px
}

.opn .val__metric-bar {
    position: absolute;
    bottom: 0;
    left: 0;
    height: 3px;
    width: 60%;
    background: linear-gradient(157deg, #B85F40, #A88440)
}

.opn .val__para-accent {
    display: block;
    width: 32px;
    height: 3px;
    background: #B85F40;
    margin-bottom: 10px
}

.opn .val__para {
    font-size: 22px;
    line-height: 1.6;
    color: #c8c5be
}

.opn .val__para strong {
    color: #F0EEE9
}

.opn .grad {
    padding: 80px 40px;
    background: #18181a;
    position: relative
}

.opn .grad__deco {
    position: absolute;
    top: 0;
    right: 0;
    width: 200px;
    height: 100%;
    pointer-events: none;
    overflow: hidden
}

.opn .grad__deco-motif {
    position: absolute;
    top: 40px;
    right: 20px;
    display: flex;
    flex-direction: column;
    gap: 20px
}

.opn .grad__dot {
    width: 6px;
    height: 6px;
    border-radius: 0;
    background: #a8844040;
    transform: rotate(45deg)
}

.opn .grad__inner {
    max-width: 1366px;
    margin: 0 auto
}

.opn .grad__top {
    display: grid;
    grid-template-columns: 1fr 480px;
    gap: 80px;
    align-items: center;
    margin-bottom: 80px
}

.opn .grad__h2 {
    font-size: 42px;
    font-weight: 800;
    line-height: 1.15;
    color: #F0EEE9;
    text-transform: uppercase;
    letter-spacing: .04em;
    margin-bottom: 20px
}

.opn .grad__sub {
    font-size: 14px;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: #A88440;
    margin-bottom: 20px;
    line-height: 1.4
}

.opn .grad__txt {
    font-size: 22px;
    line-height: 1.6;
    color: #c8c5be
}

.opn .grad__img-wrap {
    border-radius: 16px;
    overflow: hidden;
    position: relative
}

.opn .grad__img-wrap img {
    width: 100%;
    height: 360px;
    object-fit: cover;
    object-position: center;
    display: block
}

.opn .grad__img-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(157deg, transparent 40%, #a8844026 100%);
    pointer-events: none
}

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

.opn .grad__out {
    border-radius: 6px;
    padding: 20px;
    background: #111113;
    box-shadow: 1px 3px 4px 0 #b85f4012;
    position: relative;
    cursor: default
}

.opn .grad__out-icon {
    width: 32px;
    height: 32px;
    margin-bottom: 10px
}

.opn .grad__out-slit {
    overflow: hidden;
    max-height: 0;
    transition: max-height .15s cubic-bezier(0.4, 0, 1, 1)
}

.opn .grad__out:hover .grad__out-slit {
    max-height: 80px
}

.opn .grad__out-h {
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: #F0EEE9;
    line-height: 1.4;
    margin-bottom: 10px
}

.opn .grad__out-p {
    font-size: 14px;
    line-height: 1.6;
    color: #c8c5be
}

.opn .appr {
    background: #0e0e10;
    padding: 80px 40px;
    position: relative
}

.opn .appr::after {
    content: '';
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(157deg, #B85F40 0%, transparent 50%, #A88440 100%);
    pointer-events: none
}

.opn .appr__inner {
    max-width: 1366px;
    margin: 0 auto
}

.opn .appr__top {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
    margin-bottom: 80px;
    align-items: start
}

.opn .appr__label {
    font-size: 14px;
    letter-spacing: .18em;
    text-transform: uppercase;
    color: #A88440;
    line-height: 1.4;
    margin-bottom: 20px
}

.opn .appr__h2 {
    font-size: 42px;
    font-weight: 800;
    line-height: 1.15;
    color: #F0EEE9;
    text-transform: uppercase;
    letter-spacing: .04em
}

.opn .appr__right {
    padding-top: 40px
}

.opn .appr__para-accent {
    display: block;
    width: 32px;
    height: 3px;
    background: #B85F40;
    margin-bottom: 10px
}

.opn .appr__para {
    font-size: 22px;
    line-height: 1.6;
    color: #c8c5be;
    margin-bottom: 20px
}

.opn .appr__para strong {
    color: #F0EEE9 !important
}

.opn .appr__steps {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
    margin-bottom: 80px
}

.opn .appr__step {
    background: #18181a;
    border-radius: 16px;
    padding: 40px;
    box-shadow: 1px 9px 48px 0 #a884401a;
    display: grid;
    gap: 10px
}

.opn .appr__step-num {
    font-size: 56px;
    font-weight: 800;
    line-height: 1.15;
    color: #b85f402e;
    letter-spacing: -.02em
}

.opn .appr__step-h {
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: #F0EEE9;
    line-height: 1.4
}

.opn .appr__step-p {
    font-size: 14px;
    line-height: 1.6;
    color: #c8c5be
}

.opn .appr__review {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 20px;
    align-items: center;
    background: #18181a;
    border-radius: 16px;
    padding: 40px;
    box-shadow: 1px 5px 22px 0 #b85f4014
}

.opn .appr__portrait {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    overflow: hidden;
    flex-shrink: 0
}

.opn .appr__portrait img {
    width: 80px;
    height: 80px;
    object-fit: cover;
    object-position: center;
    display: block
}

.opn .appr__quote {
    font-size: 22px;
    line-height: 1.6;
    color: #c8c5be;
    font-style: italic;
    margin-bottom: 10px
}

.opn .appr__attr {
    font-size: 14px;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: #A88440;
    line-height: 1.4
}

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

    .opn .ttl__img-col {
        order: -1
    }

    .opn .ttl__img-wrap img {
        height: 320px
    }

    .opn .val__inner {
        grid-template-columns: 1fr;
        gap: 40px
    }

    .opn .val__metric-row {
        grid-template-columns: 1fr 1fr
    }

    .opn .grad__top {
        grid-template-columns: 1fr
    }

    .opn .grad__outcomes {
        grid-template-columns: 1fr 1fr
    }

    .opn .appr__top {
        grid-template-columns: 1fr;
        gap: 20px
    }

    .opn .appr__steps {
        grid-template-columns: 1fr
    }
}

@media (max-width: 640px) {
    .opn .ttl {
        padding: 40px 20px 20px
    }

    .opn .ttl__h1 {
        font-size: 42px
    }

    .opn .val {
        padding: 40px 20px
    }

    .opn .val__metric-row {
        grid-template-columns: 1fr
    }

    .opn .val__h2 {
        font-size: 42px
    }

    .opn .grad {
        padding: 40px 20px
    }

    .opn .grad__outcomes {
        grid-template-columns: 1fr
    }

    .opn .appr {
        padding: 40px 20px
    }

    .opn .appr__h2 {
        font-size: 42px
    }

    .opn .appr__review {
        grid-template-columns: 1fr
    }
}

.abt-pg {
    background: #18181a;
    color: #F0EEE9;
    overflow-x: clip
}

.abt-pg .lead-shot {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 80px 20px 40px
}

.abt-pg .lead-shot__stripe {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(157deg, #B85F40 0%, transparent 55%, #A88440 100%)
}

.abt-pg .lead-shot__img-wrap {
    position: relative;
    width: 100%;
    max-width: 780px;
    border-radius: 16px;
    overflow: hidden;
    margin-bottom: 40px
}

.abt-pg .lead-shot__img-wrap img {
    width: 100%;
    height: 420px;
    object-fit: cover;
    object-position: center 30%;
    display: block;
    border-radius: 16px
}

.abt-pg .lead-shot__img-wrap::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(157deg, transparent 30%, #18181a 100%);
    border-radius: 16px;
    pointer-events: none
}

.abt-pg .lead-shot__text {
    max-width: 780px;
    width: 100%;
    text-align: center
}

.abt-pg .lead-shot__eyebrow {
    font-size: 14px;
    letter-spacing: .18em;
    text-transform: uppercase;
    color: #A88440;
    line-height: 1.4;
    margin-bottom: 20px
}

.abt-pg .lead-shot__h1 {
    font-size: 56px;
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: -.01em;
    color: #F0EEE9;
    margin-bottom: 20px;
    text-transform: uppercase
}

.abt-pg .lead-shot__sub {
    font-size: 22px;
    line-height: 1.6;
    color: #c8c4bb;
    margin-bottom: 40px;
    max-width: 560px;
    margin-left: auto;
    margin-right: auto
}

.abt-pg .lead-shot__link {
    display: inline-flex;
    flex-direction: row;
    align-items: center;
    gap: 10px;
    padding: 10px 40px;
    background: linear-gradient(157deg, #B85F40 0%, transparent 60%, #A88440 100%);
    color: #F0EEE9;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
    text-decoration: none;
    border-radius: 6px;
    border: 1px solid #b85f4066;
    box-shadow: 1px 5px 22px 0 #b85f4014;
    transition: background .16s cubic-bezier(0.4, 0, 1, 1), border-color .12s ease-in
}

.abt-pg .lead-shot__link:hover {
    background: linear-gradient(337deg, #B85F40 0%, transparent 60%, #A88440 100%);
    border-color: #a88440b3
}

.abt-pg .lead-shot__link svg {
    width: 16px;
    height: 16px;
    fill: #F0EEE9;
    flex-shrink: 0
}

.abt-pg .story-grid {
    padding: 80px 40px;
    max-width: 1366px;
    margin: 0 auto
}

.abt-pg .story-grid__top {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 40px;
    align-items: start;
    margin-bottom: 80px
}

.abt-pg .story-grid__top-bar {
    grid-column: 1 / -1;
    height: 2px;
    background: linear-gradient(157deg, #B85F40 0%, transparent 55%, #A88440 100%);
    margin-bottom: 0
}

.abt-pg .story-grid__col {
    display: flex;
    flex-direction: column;
    gap: 20px
}

.abt-pg .story-grid__label {
    font-size: 14px;
    letter-spacing: .16em;
    text-transform: uppercase;
    color: #B85F40;
    line-height: 1.4
}

.abt-pg .story-grid__h2 {
    font-size: 42px;
    font-weight: 800;
    line-height: 1.15;
    color: #F0EEE9;
    text-transform: uppercase;
    letter-spacing: .04em
}

.abt-pg .story-grid__p {
    font-size: 14px;
    line-height: 1.6;
    color: #b8b4ac
}

.abt-pg .story-grid__img-wrap {
    position: relative;
    border-radius: 16px;
    overflow: hidden
}

.abt-pg .story-grid__img-wrap img {
    width: 100%;
    height: 300px;
    object-fit: cover;
    object-position: center;
    display: block;
    border-radius: 16px
}

.abt-pg .story-grid__img-wrap::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(157deg, #b85f402e 0%, transparent 60%);
    z-index: 1;
    pointer-events: none;
    border-radius: 16px
}

.abt-pg .story-grid__img-wrap::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    box-shadow: inset 0 0 60px #18181ab3;
    border-radius: 16px;
    pointer-events: none;
    z-index: 2
}

.abt-pg .story-grid__metrics {
    display: flex;
    flex-direction: column;
    gap: 20px
}

.abt-pg .metric-card {
    background: #222226;
    border-radius: 6px;
    padding: 20px;
    box-shadow: 1px 3px 4px 0 #b85f4012;
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 20px;
    transition: box-shadow .14s cubic-bezier(0.4, 0, 1, 1)
}

.abt-pg .metric-card:hover {
    box-shadow: 1px 9px 48px 0 #b85f401a
}

.abt-pg .metric-card__num {
    font-size: 42px;
    font-weight: 800;
    line-height: 1.15;
    color: #B85F40;
    flex-shrink: 0;
    min-width: 80px
}

.abt-pg .metric-card__desc {
    font-size: 14px;
    line-height: 1.4;
    color: #c8c4bb
}

.abt-pg .story-grid__lower {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    align-items: center
}

.abt-pg .story-grid__img2-wrap {
    position: relative;
    border-radius: 16px;
    overflow: hidden
}

.abt-pg .story-grid__img2-wrap img {
    width: 100%;
    height: 360px;
    object-fit: cover;
    object-position: center 20%;
    display: block;
    border-radius: 16px
}

.abt-pg .story-grid__img2-wrap::after {
    content: "";
    position: absolute;
    inset: 0;
    box-shadow: inset 0 0 80px #18181aa6;
    border-radius: 16px;
    pointer-events: none
}

.abt-pg .story-grid__right {
    display: flex;
    flex-direction: column;
    gap: 20px
}

.abt-pg .story-grid__accent-bar {
    width: 48px;
    height: 3px;
    background: #A88440;
    border-radius: 0
}

.abt-pg .story-grid__h3 {
    font-size: 22px;
    font-weight: 700;
    line-height: 1.4;
    color: #F0EEE9;
    text-transform: uppercase;
    letter-spacing: .06em
}

.abt-pg .dots-deco {
    display: flex;
    flex-direction: row;
    align-items: flex-end;
    gap: 10px;
    margin-top: 20px
}

.abt-pg .dot {
    border-radius: 50%;
    background: #B85F40;
    opacity: .22;
    flex-shrink: 0
}

.abt-pg .dot--sm {
    width: 6px;
    height: 6px
}

.abt-pg .dot--md {
    width: 12px;
    height: 12px;
    opacity: .15
}

.abt-pg .dot--lg {
    width: 20px;
    height: 20px;
    opacity: .1
}

.abt-pg .team-sub {
    position: relative;
    padding: 80px 40px;
    background-image: url(./photo_assets/large012.jpg);
    background-size: cover;
    background-position: center
}

.abt-pg .team-sub__overlay {
    position: absolute;
    inset: 0;
    background: #f0eee9e0;
    pointer-events: none
}

.abt-pg .team-sub__inner {
    position: relative;
    max-width: 1366px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 40px
}

.abt-pg .team-sub__head {
    display: flex;
    flex-direction: row;
    align-items: flex-end;
    justify-content: space-between;
    gap: 40px;
    flex-wrap: wrap
}

.abt-pg .team-sub__h2 {
    font-size: 42px;
    font-weight: 800;
    line-height: 1.15;
    color: #18181a;
    text-transform: uppercase;
    letter-spacing: .04em
}

.abt-pg .team-sub__intro {
    font-size: 14px;
    line-height: 1.6;
    color: #3a3830;
    max-width: 380px
}

.abt-pg .team-sub__cards {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px
}

.abt-pg .person-card {
    background: #18181a;
    border-radius: 16px;
    padding: 20px;
    display: flex;
    flex-direction: column;
    gap: 20px;
    box-shadow: 1px 5px 22px 0 #a8844014;
    transition: box-shadow .15s cubic-bezier(0.4, 0, 1, 1), transform .12s ease-in
}

.abt-pg .person-card:hover {
    box-shadow: 1px 9px 48px 0 #a884401a;
    transform: translateY(-2px)
}

.abt-pg .person-card__portrait {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    overflow: hidden;
    flex-shrink: 0
}

.abt-pg .person-card__portrait img {
    width: 80px;
    height: 80px;
    object-fit: cover;
    object-position: center;
    display: block
}

.abt-pg .person-card__no-img {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    background: linear-gradient(157deg, #B85F40 0%, #A88440 100%);
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    flex-shrink: 0
}

.abt-pg .person-card__no-img svg {
    width: 36px;
    height: 36px;
    fill: #F0EEE9;
    opacity: .8
}

.abt-pg .person-card__name {
    font-size: 22px;
    font-weight: 700;
    line-height: 1.15;
    color: #F0EEE9
}

.abt-pg .person-card__role {
    font-size: 14px;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: #B85F40;
    line-height: 1.4
}

.abt-pg .person-card__bio {
    font-size: 14px;
    line-height: 1.6;
    color: #9a9690
}

.abt-pg .sub-form-strip {
    padding: 80px 40px;
    max-width: 1366px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
    align-items: center
}

.abt-pg .sub-form-strip__left {
    display: flex;
    flex-direction: column;
    gap: 20px
}

.abt-pg .sub-form-strip__label {
    font-size: 14px;
    letter-spacing: .16em;
    text-transform: uppercase;
    color: #A88440;
    line-height: 1.4
}

.abt-pg .sub-form-strip__h2 {
    font-size: 42px;
    font-weight: 800;
    line-height: 1.15;
    color: #F0EEE9;
    text-transform: uppercase;
    letter-spacing: .04em
}

.abt-pg .sub-form-strip__p {
    font-size: 14px;
    line-height: 1.6;
    color: #b8b4ac
}

.abt-pg .sub-form-strip__img-wrap {
    position: relative;
    border-radius: 16px;
    overflow: hidden
}

.abt-pg .sub-form-strip__img-wrap img {
    width: 100%;
    height: 340px;
    object-fit: cover;
    object-position: center 40%;
    display: block;
    border-radius: 16px
}

.abt-pg .sub-form-strip__img-wrap::after {
    content: "";
    position: absolute;
    inset: 0;
    box-shadow: inset 0 0 70px #18181a99;
    border-radius: 16px;
    pointer-events: none
}

.abt-pg .sub-form {
    display: flex;
    flex-direction: column;
    gap: 20px
}

.abt-pg .sub-form__row {
    display: flex;
    flex-direction: row;
    gap: 20px
}

.abt-pg .sub-form__field {
    display: flex;
    flex-direction: column;
    gap: 10px;
    flex: 1
}

.abt-pg .sub-form__lbl {
    font-size: 14px;
    letter-spacing: .08em;
    color: #c8c4bb;
    line-height: 1.4
}

.abt-pg .sub-form__input {
    background: #222226;
    border: 1px solid #38383e;
    border-radius: 6px;
    padding: 10px 20px;
    font-size: 14px;
    color: #F0EEE9;
    line-height: 1.4;
    outline: none;
    box-shadow: inset 1px 3px 4px 0 #b85f4012;
    transition: border-color .13s cubic-bezier(0.4, 0, 1, 1);
    width: 100%
}

.abt-pg .sub-form__input::placeholder {
    color: #5a5854
}

.abt-pg .sub-form__input:focus {
    border-color: #B85F40
}

.abt-pg .sub-form__select {
    background: #222226;
    border: 1px solid #38383e;
    border-radius: 6px;
    padding: 10px 20px;
    font-size: 14px;
    color: #F0EEE9;
    line-height: 1.4;
    outline: none;
    box-shadow: inset 1px 3px 4px 0 #b85f4012;
    transition: border-color .13s cubic-bezier(0.4, 0, 1, 1);
    width: 100%;
    cursor: pointer
}

.abt-pg .sub-form__select:focus {
    border-color: #B85F40
}

.abt-pg .sub-form__select option {
    background: #222226;
    color: #F0EEE9
}

.abt-pg .sub-form__note {
    font-size: 14px;
    line-height: 1.4;
    color: #6a6660
}

.abt-pg .sub-form__btn {
    display: inline-flex;
    flex-direction: row;
    align-items: center;
    gap: 10px;
    padding: 10px 40px;
    background: linear-gradient(157deg, #B85F40 0%, transparent 60%, #A88440 100%);
    color: #F0EEE9;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    box-shadow: 1px 5px 22px 0 #b85f4014;
    transition: background .16s cubic-bezier(0.4, 0, 1, 1);
    align-self: flex-start
}

.abt-pg .sub-form__btn:hover {
    background: linear-gradient(337deg, #B85F40 0%, transparent 60%, #A88440 100%)
}

.abt-pg .sub-form__btn:focus {
    outline: 2px solid #A88440;
    outline-offset: 3px
}

.abt-pg .sub-form__btn svg {
    width: 16px;
    height: 16px;
    fill: #F0EEE9;
    flex-shrink: 0
}

.abt-pg .fade-up {
    opacity: 0;
    transform: translateY(18px);
    animation: fadeUpIn .18s cubic-bezier(0.4, 0, 1, 1) forwards
}

.abt-pg .fade-up--d1 {
    animation-delay: .05s
}

.abt-pg .fade-up--d2 {
    animation-delay: .1s
}

.abt-pg .fade-up--d3 {
    animation-delay: .15s
}

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

@media (max-width: 900px) {
    .abt-pg .story-grid__top {
        grid-template-columns: 1fr
    }

    .abt-pg .story-grid__top-bar {
        grid-column: 1
    }

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

    .abt-pg .team-sub__cards {
        grid-template-columns: 1fr 1fr
    }

    .abt-pg .sub-form-strip {
        grid-template-columns: 1fr;
        gap: 40px
    }

    .abt-pg .lead-shot__h1 {
        font-size: 42px
    }

    .abt-pg .sub-form__row {
        flex-direction: column
    }
}

@media (max-width: 600px) {
    .abt-pg .team-sub__cards {
        grid-template-columns: 1fr
    }

    .abt-pg .lead-shot__h1 {
        font-size: 42px
    }

    .abt-pg .story-grid {
        padding: 40px 20px
    }

    .abt-pg .team-sub {
        padding: 40px 20px
    }

    .abt-pg .sub-form-strip {
        padding: 40px 20px
    }

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

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

.succ-pg .succ-card {
    max-width: 560px;
    width: 100%;
    background: #1e1c1a;
    border-radius: 16px;
    padding: 40px;
    box-shadow: 1px 9px 48px 0 #b85f401a;
    text-align: center
}

.succ-pg .succ-card .icon-wrap {
    width: 64px;
    height: 64px;
    margin: 0 auto 40px;
    border-radius: 16px;
    background: linear-gradient(157deg, #B85F40 0%, transparent 60%, #A88440 100%);
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center
}

.succ-pg .succ-card .icon-wrap svg {
    display: block
}

.succ-pg .succ-card .succ-title {
    font-size: 42px;
    font-weight: 700;
    line-height: 1.15;
    letter-spacing: -.5px;
    color: #F0EEE9;
    margin: 0 0 20px;
    text-transform: uppercase
}

.succ-pg .succ-card .accent-bar {
    width: 40px;
    height: 3px;
    background: #B85F40;
    border-radius: 0;
    margin: 0 auto 20px
}

.succ-pg .succ-card .succ-msg {
    font-size: 14px;
    line-height: 1.6;
    color: #b5b0a8;
    margin: 0 0 40px
}

.succ-pg .succ-card .succ-link {
    display: inline-flex;
    flex-direction: row;
    align-items: center;
    gap: 10px;
    padding: 10px 20px;
    border-radius: 6px;
    background: linear-gradient(157deg, #B85F40 0%, transparent 50%, #A88440 100%);
    background-size: 200% 200%;
    background-position: 0 50%;
    color: #F0EEE9;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: .08em;
    text-transform: uppercase;
    text-decoration: none;
    transition: background-position .15s cubic-bezier(0.4, 0, 1, 1), box-shadow .12s ease-in;
    box-shadow: 1px 3px 4px 0 #b85f4012
}

.succ-pg .succ-card .succ-link:hover {
    background-position: 100% 50%;
    box-shadow: 1px 5px 22px 0 #b85f4014
}

.succ-pg .succ-card .succ-link:focus {
    outline: 2px solid #B85F40;
    outline-offset: 3px
}

.succ-pg .succ-card .succ-link svg {
    flex-shrink: 0
}

.succ-pg .brand-note {
    margin: 20px 0 0;
    font-size: 14px;
    line-height: 1.4;
    color: #6e6860;
    letter-spacing: .06em
}