@import url('https://cdn.jsdelivr.net/npm/@fontsource/karla@latest/400.css');
@import url('https://cdn.jsdelivr.net/npm/@fontsource/karla@latest/700.css');

html {
    box-sizing: border-box;
}

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

body {
    margin: 0;
    overflow-x: hidden;
    min-height: 100vh;
    font-family: 'Karla', sans-serif;
    font-size: 15px;
    line-height: 1.5;
    background-color: #fff;
    color: #2a1f0e;
}

.hx-band {
    background: linear-gradient(135deg, #BD9661 0%, #D7C8B2 60%, #E6E6E1 100%);
    height: 6px;
    width: 100%;
}

.hx-shell {
    background: #fff;
    box-shadow: -1px 4px 20px 0 rgba(189, 150, 97, 0.08), -1px 12px 52px 0 rgba(189, 150, 97, 0.14);
    position: relative;
    z-index: 100;
}

.hx-inner {
    max-width: 1140px;
    margin: 0 auto;
    padding: 36px 36px 0 36px;
    display: flex;
    align-items: stretch;
    gap: 36px;
}

.hx-brand {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.hx-logo-hex {
    position: relative;
    width: 88px;
    height: 88px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    clip-path: polygon(50% 0%, 93% 25%, 93% 75%, 50% 100%, 7% 75%, 7% 25%);
    box-shadow: -1px 2px 3px 0 rgba(189, 150, 97, 0.07), -1px 4px 20px 0 rgba(189, 150, 97, 0.08);
    border: 2px solid #BD9661;
}

.hx-logo-hex::before {
    content: '';
    position: absolute;
    inset: 4px;
    background: linear-gradient(160deg, #f9f5ef 0%, #fff 100%);
    clip-path: polygon(50% 0%, 93% 25%, 93% 75%, 50% 100%, 7% 75%, 7% 25%);
}

.hx-logo-hex img {
    position: relative;
    z-index: 1;
    width: 60px;
    height: 60px;
    object-fit: contain;
    display: block;
}

.hx-brand-name {
    margin-top: 8px;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #2a1f0e;
    text-align: center;
}

.hx-mid {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding-bottom: 0;
}

.hx-contact-row {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 36px;
    padding-bottom: 8px;
}

.hx-phone-link {
    display: flex;
    align-items: center;
    gap: 8px;
    text-decoration: none;
    color: #2a1f0e;
    font-size: 15px;
    font-weight: 700;
    padding: 8px 16px;
    border-radius: 6px;
    background: linear-gradient(90deg, #BD9661 0%, #D7C8B2 100%);
    box-shadow: -1px 2px 3px 0 rgba(189, 150, 97, 0.07);
    transition: box-shadow 0.2s cubic-bezier(0.34, 1.56, 0.64, 1), background 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.hx-phone-link:hover {
    box-shadow: -1px 4px 20px 0 rgba(189, 150, 97, 0.08), -1px 12px 52px 0 rgba(189, 150, 97, 0.14);
    background: linear-gradient(90deg, #D7C8B2 0%, #BD9661 100%);
}

.hx-phone-link:focus {
    outline: none;
    box-shadow: 0 0 0 3px rgba(189, 150, 97, 0.45);
}

.hx-phone-icon {
    width: 16px;
    height: 16px;
    flex-shrink: 0;
}

.hx-tg-link {
    display: flex;
    align-items: center;
    gap: 8px;
    text-decoration: none;
    color: #BD9661;
    font-size: 15px;
    font-weight: 700;
    transition: color 0.2s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.hx-tg-link:hover {
    color: #2a1f0e;
}

.hx-tg-link:focus {
    outline: none;
    box-shadow: 0 0 0 3px rgba(189, 150, 97, 0.45);
    border-radius: 6px;
}

.hx-tg-icon {
    width: 18px;
    height: 18px;
    flex-shrink: 0;
}

.hx-nav-row {
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
}

.hx-nav {
    display: flex;
    align-items: flex-end;
    gap: 4px;
    flex-wrap: wrap;
}

.hx-nav-item {
    text-decoration: none;
    font-size: 15px;
    font-weight: 700;
    color: #2a1f0e;
    padding: 16px 16px;
    display: block;
    border-radius: 11px 11px 0 0;
    position: relative;
    transition: background 0.2s cubic-bezier(0.34, 1.56, 0.64, 1), color 0.2s cubic-bezier(0.34, 1.56, 0.64, 1);
    background: transparent;
}

.hx-nav-item::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 16px;
    right: 16px;
    height: 3px;
    background: #BD9661;
    border-radius: 30px 30px 0 0;
    transform: scaleX(0);
    transition: transform 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.hx-nav-item:hover {
    background: rgba(189, 150, 97, 0.08);
    color: #BD9661;
}

.hx-nav-item:hover::after {
    transform: scaleX(1);
}

.hx-nav-item:focus {
    outline: none;
    box-shadow: 0 0 0 3px rgba(189, 150, 97, 0.45);
}

.hx-nav-item.active {
    background: rgba(189, 150, 97, 0.12);
    color: #BD9661;
}

.hx-nav-item.active::after {
    transform: scaleX(1);
}

.hx-accent-bar {
    height: 4px;
    background: linear-gradient(90deg, #E6E6E1 0%, #D7C8B2 40%, #BD9661 100%);
    border-radius: 0;
}

@media (max-width: 768px) {
    .hx-inner {
        flex-direction: column;
        align-items: center;
        padding: 16px 16px 0 16px;
        gap: 16px;
    }

    .hx-mid {
        width: 100%;
        align-items: center;
    }

    .hx-contact-row {
        justify-content: center;
        flex-wrap: wrap;
        gap: 16px;
    }

    .hx-nav-row {
        justify-content: center;
    }

    .hx-nav {
        justify-content: center;
    }
}

@media (max-width: 375px) {
    .hx-nav-item {
        padding: 8px 8px;
        font-size: 15px;
    }

    .hx-contact-row {
        gap: 8px;
    }
}

.ft-shell {
    background: #D7C8B2;
    box-shadow: -1px 12px 52px 0 rgba(215, 200, 178, 0.14);
}

.ft-top-accent {
    height: 4px;
    background: linear-gradient(90deg, #BD9661 0%, #D7C8B2 50%, #E6E6E1 100%);
}

.ft-inner {
    max-width: 1140px;
    margin: 0 auto;
    padding: 72px 36px 36px 36px;
}

.ft-grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 36px;
    margin-bottom: 72px;
}

.ft-col-label {
    font-size: 15px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: #2a1f0e;
    margin-bottom: 16px;
    display: block;
}

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

.ft-links li a {
    text-decoration: none;
    font-size: 15px;
    color: #2a1f0e;
    line-height: 1.5;
    padding: 4px 0;
    display: inline-block;
    border-bottom: 1px solid rgba(189, 150, 97, 0.25);
    transition: color 0.2s cubic-bezier(0.34, 1.56, 0.64, 1), border-color 0.2s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.ft-links li a:hover {
    color: #BD9661;
    border-color: #BD9661;
}

.ft-links li a:focus {
    outline: none;
    box-shadow: 0 0 0 3px rgba(189, 150, 97, 0.45);
    border-radius: 6px;
}

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

.ft-contact-list li {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    font-size: 15px;
    color: #2a1f0e;
    line-height: 1.5;
}

.ft-contact-list li a {
    color: #2a1f0e;
    text-decoration: none;
    transition: color 0.2s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.ft-contact-list li a:hover {
    color: #BD9661;
}

.ft-contact-list li a:focus {
    outline: none;
    box-shadow: 0 0 0 3px rgba(189, 150, 97, 0.45);
    border-radius: 6px;
}

.ft-contact-icon {
    width: 16px;
    height: 16px;
    flex-shrink: 0;
    margin-top: 2px;
    fill: #BD9661;
}

.ft-bottom {
    border-top: 1px solid rgba(189, 150, 97, 0.3);
    padding-top: 36px;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
}

.ft-logo-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
}

.ft-logo-hex {
    position: relative;
    width: 72px;
    height: 72px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    clip-path: polygon(50% 0%, 93% 25%, 93% 75%, 50% 100%, 7% 75%, 7% 25%);
    box-shadow: -1px 2px 3px 0 rgba(189, 150, 97, 0.07), -1px 4px 20px 0 rgba(189, 150, 97, 0.08);
}

.ft-logo-hex::before {
    content: '';
    position: absolute;
    inset: 3px;
    background: #fff;
    clip-path: polygon(50% 0%, 93% 25%, 93% 75%, 50% 100%, 7% 75%, 7% 25%);
}

.ft-logo-hex img {
    position: relative;
    z-index: 1;
    width: 52px;
    height: 52px;
    object-fit: contain;
    display: block;
}

.ft-copy {
    font-size: 15px;
    color: #2a1f0e;
    text-align: center;
    line-height: 1.5;
    opacity: 0.75;
}

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

    .ft-inner {
        padding: 36px 16px 36px 16px;
    }
}

@media (max-width: 375px) {
    .ft-grid {
        grid-template-columns: 1fr;
        gap: 36px;
    }
}

.ck-bar {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 8000;
    background: #fff;
    box-shadow: -1px 4px 20px 0 rgba(189, 150, 97, 0.08), -1px 12px 52px 0 rgba(189, 150, 97, 0.14);
    border-radius: 11px 11px 0 0;
}

.ck-inner {
    max-width: 1140px;
    margin: 0 auto;
    padding: 36px 36px;
    display: flex;
    align-items: center;
    gap: 36px;
    flex-wrap: wrap;
}

.ck-text {
    flex: 1;
    min-width: 200px;
}

.ck-desc {
    font-size: 15px;
    color: #2a1f0e;
    line-height: 1.5;
    margin: 0 0 4px 0;
}

.ck-headline {
    font-size: 15px;
    font-weight: 700;
    color: #2a1f0e;
    margin: 0;
}

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

.ck-btn-accept {
    font-family: 'Karla', sans-serif;
    font-size: 15px;
    font-weight: 700;
    color: #2a1f0e;
    background: transparent;
    border: 2px solid #BD9661;
    border-radius: 6px;
    padding: 8px 16px;
    cursor: pointer;
    transition: box-shadow 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), background 0.2s cubic-bezier(0.34, 1.56, 0.64, 1);
    min-height: 44px;
}

.ck-btn-accept:hover {
    background: rgba(189, 150, 97, 0.1);
    box-shadow: -1px 4px 20px 0 rgba(189, 150, 97, 0.08);
}

.ck-btn-accept:focus {
    outline: none;
    box-shadow: 0 0 0 3px rgba(189, 150, 97, 0.45);
}

.ck-btn-decline {
    font-family: 'Karla', sans-serif;
    font-size: 15px;
    color: #2a1f0e;
    background: transparent;
    border: none;
    cursor: pointer;
    text-decoration: underline;
    padding: 8px 4px;
    min-height: 44px;
    transition: color 0.2s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.ck-btn-decline:hover {
    color: #BD9661;
}

.ck-btn-decline:focus {
    outline: none;
    box-shadow: 0 0 0 3px rgba(189, 150, 97, 0.45);
    border-radius: 6px;
}

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

.terms-e-text {
    max-width: 1140px;
    margin: 0 auto;
    padding: 72px 36px;
}

.terms-e-text h1 {
    font-size: 50px;
    line-height: 1.1;
    color: #2a1f0e;
    margin-bottom: 36px;
    margin-top: 0;
    padding-bottom: 16px;
    border-bottom: 2px solid #BD9661;
}

.terms-e-text h2 {
    font-size: 26px;
    line-height: 1.5;
    color: #2a1f0e;
    margin-top: 72px;
    margin-bottom: 16px;
}

.terms-e-text h3 {
    font-size: 26px;
    line-height: 1.5;
    color: #3d2e14;
    margin-top: 36px;
    margin-bottom: 16px;
}

.terms-e-text h4,
.terms-e-text h5,
.terms-e-text h6 {
    font-size: 15px;
    line-height: 1.5;
    color: #3d2e14;
    margin-top: 36px;
    margin-bottom: 8px;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.terms-e-text div {
    font-size: 15px;
    line-height: 1.8;
    color: #2a1f0e;
    margin-bottom: 16px;
}

.terms-e-text ul,
.terms-e-text ol {
    font-size: 15px;
    line-height: 1.8;
    color: #2a1f0e;
    padding-left: 36px;
    margin-top: 8px;
    margin-bottom: 16px;
}

.terms-e-text ul {
    list-style: none;
    padding-left: 16px;
}

.terms-e-text ul li {
    position: relative;
    padding-left: 16px;
}

.terms-e-text ul li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.75em;
    width: 6px;
    height: 6px;
    background-color: #BD9661;
    border-radius: 6px;
}

.terms-e-text ol {
    list-style: decimal;
}

.terms-e-text ol li {
    padding-left: 8px;
}

.terms-e-text li {
    margin-bottom: 4px;
}

.terms-e-text li ul,
.terms-e-text li ol {
    margin-top: 4px;
    margin-bottom: 4px;
}

.terms-e-text em,
.terms-e-text i {
    font-style: italic;
    color: #5a3e1b;
}

.terms-e-text a {
    color: #8a6530;
    text-decoration: underline;
    text-decoration-color: #D7C8B2;
    text-underline-offset: 3px;
    transition: color 0.2s cubic-bezier(0.34, 1.56, 0.64, 1), text-decoration-color 0.2s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.terms-e-text a:hover {
    color: #BD9661;
    text-decoration-color: #BD9661;
}

@media (max-width: 768px) {
    .terms-e-text {
        padding: 36px 16px;
    }

    .terms-e-text h1 {
        font-size: 26px;
    }

    .terms-e-text h2 {
        font-size: 15px;
        margin-top: 36px;
    }

    .terms-e-text h3 {
        font-size: 15px;
    }
}

@media (max-width: 375px) {
    .terms-e-text {
        padding: 36px 8px;
    }
}

.prm {
    max-width: 1140px;
    margin: 0 auto;
    overflow-x: clip;
}

.prm .geo-divider {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 16px 0;
}

.prm .geo-divider span {
    width: 8px;
    height: 8px;
    background: #BD9661;
    transform: rotate(45deg);
    display: inline-block;
    opacity: 0.5;
}

.prm .geo-divider span:nth-child(3) {
    opacity: 1;
}

.prm .geo-divider span:nth-child(1),
.prm .geo-divider span:nth-child(5) {
    opacity: 0.25;
}

.prm .t-blk {
    position: relative;
    padding: 72px 36px;
    background: #E6E6E1;
    border-radius: 11px;
    overflow: hidden;
    margin: 36px 36px 0;
}

.prm .t-blk .dot-scatter {
    position: absolute;
    inset: 0;
    pointer-events: none;
}

.prm .t-blk .dot-scatter::before {
    content: '';
    position: absolute;
    inset: 0;
    background-image:
        radial-gradient(circle, #BD9661 1px, transparent 1px),
        radial-gradient(circle, #BD9661 1px, transparent 1px);
    background-size: 28px 28px, 52px 52px;
    background-position: 0 0, 14px 14px;
    opacity: 0.13;
}

.prm .t-blk .t-inner {
    position: relative;
    max-width: 680px;
    margin: 0 auto;
    text-align: center;
}

.prm .t-blk .t-label {
    display: inline-block;
    font-size: 15px;
    line-height: 1.5;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: #BD9661;
    margin-bottom: 16px;
    border: 2px solid #BD9661;
    border-radius: 6px;
    padding: 4px 16px;
}

.prm .t-blk .t-h1 {
    font-size: 50px;
    line-height: 1.1;
    color: #2a1f0e;
    margin: 0 0 16px;
}

.prm .t-blk .t-h1 .und-word {
    position: relative;
    display: inline-block;
}

.prm .t-blk .t-h1 .und-word::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -4px;
    width: 100%;
    height: 3px;
    background: #BD9661;
    border-radius: 6px;
}

.prm .t-blk .t-pts {
    list-style: none;
    padding: 0;
    margin: 36px 0 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.prm .t-blk .t-pts li {
    font-size: 15px;
    line-height: 1.8;
    color: #3a2e1e;
    display: flex;
    align-items: flex-start;
    gap: 8px;
    text-align: left;
}

.prm .t-blk .t-pts li .pt-num {
    font-size: 26px;
    line-height: 1.1;
    color: #BD9661;
    font-weight: 700;
    min-width: 32px;
    flex-shrink: 0;
}

.prm .val-blk {
    padding: 72px 36px;
    margin: 0 36px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 36px;
    align-items: start;
}

.prm .val-blk .val-txt {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.prm .val-blk .val-shape {
    width: 18px;
    height: 18px;
    background: #BD9661;
    border-radius: 6px;
    margin-bottom: 8px;
    opacity: 0.7;
}

.prm .val-blk .val-h2 {
    font-size: 26px;
    line-height: 1.1;
    color: #2a1f0e;
    margin: 0;
}

.prm .val-blk .val-p {
    font-size: 15px;
    line-height: 1.8;
    color: #3a2e1e;
    margin: 0;
}

.prm .val-blk .chart-wrap {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    background: #fff;
    border-radius: 11px;
    padding: 36px 16px;
    box-shadow: -1px 4px 20px 0 rgba(189, 150, 97, 0.08);
}

.prm .val-blk .donut-svg {
    width: 160px;
    height: 160px;
}

.prm .val-blk .chart-legend {
    display: flex;
    flex-direction: column;
    gap: 8px;
    width: 100%;
}

.prm .val-blk .leg-item {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 15px;
    line-height: 1.5;
    color: #3a2e1e;
}

.prm .val-blk .leg-dot {
    width: 12px;
    height: 12px;
    border-radius: 6px;
    flex-shrink: 0;
}

.prm .exp-blk {
    position: relative;
    margin: 0 0;
    padding: 72px 36px;
    background: linear-gradient(158deg, #D7C8B2 0%, transparent 55%);
    border-radius: 11px;
}

.prm .exp-blk .exp-grid {
    max-width: 760px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 36px;
}

.prm .exp-blk .exp-shape {
    width: 14px;
    height: 14px;
    background: #BD9661;
    border-radius: 30px;
    display: inline-block;
    margin-bottom: 8px;
}

.prm .exp-blk .exp-h2 {
    font-size: 26px;
    line-height: 1.1;
    color: #2a1f0e;
    margin: 0 0 16px;
}

.prm .exp-blk .exp-quote {
    border: 2px dashed #BD9661;
    border-radius: 11px;
    padding: 36px;
    background: #fff;
    display: flex;
    flex-direction: column;
    gap: 16px;
    box-shadow: -1px 12px 52px 0 rgba(189, 150, 97, 0.14);
}

.prm .exp-blk .exp-img {
    width: 100%;
    height: 220px;
    object-fit: cover;
    object-position: center top;
    border-radius: 6px;
}

.prm .exp-blk .exp-person {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.prm .exp-blk .exp-name {
    font-size: 15px;
    line-height: 1.5;
    color: #BD9661;
    font-weight: 700;
}

.prm .exp-blk .exp-role {
    font-size: 15px;
    line-height: 1.5;
    color: #7a6a52;
}

.prm .exp-blk .exp-body {
    font-size: 15px;
    line-height: 1.8;
    color: #3a2e1e;
    margin: 0;
}

.prm .who-blk {
    padding: 72px 36px;
    margin: 0 36px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 36px;
}

.prm .who-blk .who-col {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.prm .who-blk .who-h2 {
    font-size: 26px;
    line-height: 1.1;
    color: #2a1f0e;
    margin: 0;
}

.prm .who-blk .who-shape {
    width: 20px;
    height: 4px;
    background: #BD9661;
    border-radius: 6px;
}

.prm .who-blk .who-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.prm .who-blk .who-list li {
    font-size: 15px;
    line-height: 1.8;
    color: #3a2e1e;
    padding: 8px 16px;
    border-radius: 6px;
    background: #E6E6E1;
    transition: box-shadow 0.2s cubic-bezier(0.34, 1.56, 0.64, 1), background 0.18s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.prm .who-blk .who-list li:hover {
    background: #D7C8B2;
    box-shadow: -1px 4px 20px 0 rgba(189, 150, 97, 0.08);
}

.prm .who-blk .who-list.neg li {
    background: #f5f2ee;
}

.prm .who-blk .who-list.neg li:hover {
    background: #ede8e0;
}

.prm .who-blk .who-img {
    width: 100%;
    height: 180px;
    object-fit: cover;
    object-position: center;
    border-radius: 11px;
    box-shadow: -1px 4px 20px 0 rgba(189, 150, 97, 0.08);
}

.prm .appr-blk {
    position: relative;
    padding: 72px 36px;
    overflow: hidden;
}

.prm .appr-blk .two-tone {
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, #D7C8B2 45%, #E6E6E1 45%);
    z-index: 0;
    pointer-events: none;
}

.prm .appr-blk .appr-inner {
    position: relative;
    z-index: 1;
    max-width: 760px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 36px;
}

.prm .appr-blk .appr-shape {
    width: 22px;
    height: 22px;
    border: 3px solid #BD9661;
    border-radius: 6px;
    display: inline-block;
    margin-bottom: 8px;
}

.prm .appr-blk .appr-h2 {
    font-size: 26px;
    line-height: 1.1;
    color: #2a1f0e;
    margin: 0;
}

.prm .appr-blk .appr-cards {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
}

.prm .appr-blk .a-card {
    background: #fff;
    border-radius: 11px;
    padding: 16px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    box-shadow: -1px 2px 3px 0 rgba(189, 150, 97, 0.07);
    transform-style: preserve-3d;
    animation: cardflip 0.45s cubic-bezier(0.34, 1.56, 0.64, 1) both;
    transition: box-shadow 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.prm .appr-blk .a-card:hover {
    box-shadow: -1px 12px 52px 0 rgba(189, 150, 97, 0.14);
}

.prm .appr-blk .a-card:nth-child(1) {
    animation-delay: 0.05s;
}

.prm .appr-blk .a-card:nth-child(2) {
    animation-delay: 0.18s;
}

.prm .appr-blk .a-card:nth-child(3) {
    animation-delay: 0.31s;
}

@keyframes cardflip {
    0% {
        opacity: 0;
        transform: rotateY(90deg);
    }

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

.prm .appr-blk .a-num {
    font-size: 50px;
    line-height: 1.1;
    color: #BD9661;
    font-weight: 700;
}

.prm .appr-blk .a-lbl {
    font-size: 15px;
    line-height: 1.5;
    color: #2a1f0e;
    font-weight: 700;
}

.prm .appr-blk .a-desc {
    font-size: 15px;
    line-height: 1.8;
    color: #5a4a32;
    margin: 0;
}

.prm .appr-blk .appr-img {
    width: 100%;
    height: 200px;
    object-fit: cover;
    object-position: center;
    border-radius: 11px;
    box-shadow: -1px 12px 52px 0 rgba(189, 150, 97, 0.14);
}

.prm .sup-blk {
    padding: 72px 36px;
    margin: 0 36px 36px;
    display: flex;
    flex-direction: column;
    gap: 36px;
}

.prm .sup-blk .sup-top {
    display: flex;
    flex-direction: column;
    gap: 16px;
    max-width: 560px;
}

.prm .sup-blk .sup-shape {
    width: 12px;
    height: 12px;
    background: transparent;
    border: 2px solid #BD9661;
    border-radius: 30px;
    display: inline-block;
}

.prm .sup-blk .sup-h2 {
    font-size: 26px;
    line-height: 1.1;
    color: #2a1f0e;
    margin: 0;
}

.prm .sup-blk .sup-p {
    font-size: 15px;
    line-height: 1.8;
    color: #3a2e1e;
    margin: 0;
}

.prm .sup-blk .sup-row {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
}

.prm .sup-blk .s-item {
    background: #E6E6E1;
    border-radius: 11px;
    padding: 36px 16px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    transition: box-shadow 0.35s cubic-bezier(0.68, -0.55, 0.27, 1.55), background 0.2s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.prm .sup-blk .s-item:hover {
    background: #D7C8B2;
    box-shadow: -1px 4px 20px 0 rgba(189, 150, 97, 0.08);
}

.prm .sup-blk .s-icon {
    width: 32px;
    height: 32px;
    flex-shrink: 0;
}

.prm .sup-blk .s-ttl {
    font-size: 15px;
    line-height: 1.5;
    color: #2a1f0e;
    font-weight: 700;
    margin: 0;
}

.prm .sup-blk .s-desc {
    font-size: 15px;
    line-height: 1.8;
    color: #5a4a32;
    margin: 0;
}

@media (max-width: 768px) {
    .prm .t-blk {
        margin: 16px 8px 0;
        padding: 36px 16px;
    }

    .prm .t-blk .t-h1 {
        font-size: 26px;
    }

    .prm .val-blk {
        grid-template-columns: 1fr;
        margin: 0 8px;
        padding: 36px 16px;
    }

    .prm .exp-blk {
        padding: 36px 16px;
    }

    .prm .who-blk {
        grid-template-columns: 1fr;
        margin: 0 8px;
        padding: 36px 16px;
    }

    .prm .appr-blk {
        padding: 36px 16px;
    }

    .prm .appr-blk .appr-cards {
        grid-template-columns: 1fr;
    }

    .prm .sup-blk {
        margin: 0 8px 16px;
        padding: 36px 16px;
    }

    .prm .sup-blk .sup-row {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 375px) {
    .prm .t-blk .t-h1 {
        font-size: 26px;
    }

    .prm .geo-divider {
        gap: 4px;
    }
}

.abt-pg {
    width: 100%;
    overflow-x: hidden;
}

.abt-pg .top-strip {
    width: 100%;
    background: linear-gradient(180deg, #BD9661 0%, rgba(189, 150, 97, 0) 100%);
    padding: 72px 16px 72px;
    position: relative;
}

.abt-pg .top-strip::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: #BD9661;
}

.abt-pg .top-strip::after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: #D7C8B2;
}

.abt-pg .top-inner {
    max-width: 1140px;
    margin: 0 auto;
    display: flex;
    flex-direction: row;
    align-items: flex-end;
    gap: 72px;
}

.abt-pg .top-text-col {
    flex: 1 1 0;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.abt-pg .top-pre {
    font-size: 15px;
    line-height: 1.8;
    color: #3a2e1e;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.abt-pg .top-h1 {
    font-size: 50px;
    line-height: 1.1;
    color: #1b1408;
    margin: 0;
}

.abt-pg .top-desc {
    font-size: 15px;
    line-height: 1.8;
    color: #2e2416;
    max-width: 520px;
}

.abt-pg .top-img-col {
    flex: 0 0 420px;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    position: relative;
}

.abt-pg .top-img-frame {
    width: 420px;
    height: 280px;
    border-radius: 11px;
    overflow: hidden;
    box-shadow: -1px 12px 52px 0 rgba(189, 150, 97, 0.14);
    position: relative;
}

.abt-pg .top-img-frame img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 30%;
    display: block;
    animation: img-scale-in 0.5s cubic-bezier(0.34, 1.56, 0.64, 1) both;
    filter: sepia(0.22) contrast(1.07) brightness(0.97) saturate(0.9);
}

@keyframes img-scale-in {
    from {
        transform: scale(0.97);
    }

    to {
        transform: scale(1);
    }
}

.abt-pg .top-dot-badge {
    position: absolute;
    top: 12px;
    right: 12px;
    width: 36px;
    height: 36px;
    border-radius: 30px;
    background: #BD9661;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: -1px 4px 20px 0 rgba(189, 150, 97, 0.08);
}

.abt-pg .top-dot-badge .wi {
    font-size: 15px;
    color: #fff;
}

.abt-pg .wave-div {
    width: 100%;
    line-height: 0;
    display: block;
    margin-top: -2px;
}

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

.abt-pg .about-body {
    background: #fff;
    padding: 72px 16px 72px;
    position: relative;
}

.abt-pg .about-body::before {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: #BD9661;
}

.abt-pg .body-inner {
    max-width: 1140px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 72px;
}

.abt-pg .two-col {
    display: flex;
    flex-direction: row;
    gap: 72px;
    align-items: flex-start;
}

.abt-pg .col-left {
    flex: 1 1 0;
    display: flex;
    flex-direction: column;
    gap: 36px;
}

.abt-pg .col-right {
    flex: 1 1 0;
    display: flex;
    flex-direction: column;
    gap: 36px;
}

.abt-pg .sec-label {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 8px;
}

.abt-pg .sec-label .shape-sq {
    width: 12px;
    height: 12px;
    background: #BD9661;
    border-radius: 6px;
    flex-shrink: 0;
}

.abt-pg .sec-label-txt {
    font-size: 15px;
    line-height: 1.5;
    color: #BD9661;
    text-transform: uppercase;
    letter-spacing: 0.1em;
}

.abt-pg .col-h2 {
    font-size: 26px;
    line-height: 1.5;
    color: #1b1408;
    margin: 0;
}

.abt-pg .col-body-txt {
    font-size: 15px;
    line-height: 1.8;
    color: #2e2416;
}

.abt-pg .img-side {
    width: 100%;
    height: 340px;
    border-radius: 11px;
    overflow: hidden;
    box-shadow: -1px 4px 20px 0 rgba(189, 150, 97, 0.08);
    position: relative;
}

.abt-pg .img-side img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 40%;
    display: block;
    transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1);
    filter: sepia(0.18) contrast(1.05) brightness(0.98) saturate(0.88);
}

.abt-pg .img-side:hover img {
    transform: scale(1.04);
}

.abt-pg .img-dot {
    position: absolute;
    bottom: 12px;
    left: 12px;
    width: 10px;
    height: 10px;
    border-radius: 30px;
    background: #BD9661;
}

.abt-pg .metrics-row {
    display: flex;
    flex-direction: row;
    gap: 16px;
    flex-wrap: wrap;
}

.abt-pg .metric-card {
    flex: 1 1 140px;
    background: #E6E6E1;
    border-radius: 11px;
    padding: 36px 16px 16px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    box-shadow: -1px 2px 3px 0 rgba(189, 150, 97, 0.07);
    transition: box-shadow 0.2s cubic-bezier(0.34, 1.56, 0.64, 1), transform 0.2s cubic-bezier(0.34, 1.56, 0.64, 1);
    cursor: default;
    position: relative;
}

.abt-pg .metric-card:hover {
    box-shadow: -1px 12px 52px 0 rgba(189, 150, 97, 0.14);
    transform: scale(1.04);
}

.abt-pg .metrics-row .metric-card:not(:hover) {
    transform: scale(0.97);
    opacity: 0.88;
    transition: transform 0.25s cubic-bezier(0.68, -0.55, 0.27, 1.55), opacity 0.2s linear;
}

.abt-pg .metrics-row:hover .metric-card:not(:hover) {
    transform: scale(0.96);
    opacity: 0.82;
}

.abt-pg .metrics-row .metric-card:hover {
    transform: scale(1.05);
    opacity: 1;
}

.abt-pg .metric-num {
    font-size: 50px;
    line-height: 1.1;
    color: #BD9661;
}

.abt-pg .metric-lbl {
    font-size: 15px;
    line-height: 1.5;
    color: #2e2416;
}

.abt-pg .metric-dot {
    position: absolute;
    top: 12px;
    right: 12px;
    width: 8px;
    height: 8px;
    border-radius: 30px;
    background: #BD9661;
}

.abt-pg .team-strip {
    display: flex;
    flex-direction: column;
    gap: 36px;
}

.abt-pg .team-strip-h {
    font-size: 26px;
    line-height: 1.5;
    color: #1b1408;
    margin: 0;
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 8px;
}

.abt-pg .team-strip-h .shape-tri {
    width: 0;
    height: 0;
    border-left: 8px solid #BD9661;
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    flex-shrink: 0;
}

.abt-pg .team-list {
    display: flex;
    flex-direction: row;
    gap: 16px;
    flex-wrap: wrap;
}

.abt-pg .team-card {
    flex: 1 1 200px;
    background: #fff;
    border-radius: 11px;
    padding: 16px;
    box-shadow: -1px 4px 20px 0 rgba(189, 150, 97, 0.08);
    display: flex;
    flex-direction: column;
    gap: 8px;
    border-top: 3px solid #D7C8B2;
    transition: box-shadow 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), border-top-color 0.2s linear;
}

.abt-pg .team-card:hover {
    box-shadow: -1px 12px 52px 0 rgba(189, 150, 97, 0.14);
    border-top-color: #BD9661;
}

.abt-pg .team-name {
    font-size: 15px;
    line-height: 1.5;
    color: #1b1408;
}

.abt-pg .team-role {
    font-size: 15px;
    line-height: 1.5;
    color: #BD9661;
}

.abt-pg .img-third {
    width: 100%;
    height: 220px;
    border-radius: 11px;
    overflow: hidden;
    box-shadow: -1px 4px 20px 0 rgba(189, 150, 97, 0.08);
    position: relative;
}

.abt-pg .img-third img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 20%;
    display: block;
    filter: sepia(0.2) contrast(1.06) brightness(0.97) saturate(0.9);
    transition: transform 0.35s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.abt-pg .img-third:hover img {
    transform: scale(1.04);
}

.abt-pg .img-third .img-dot {
    bottom: 12px;
    left: 12px;
}

@media (max-width: 1024px) {
    .abt-pg .top-inner {
        flex-direction: column;
        gap: 36px;
        align-items: flex-start;
    }

    .abt-pg .top-img-col {
        flex: 0 0 auto;
        width: 100%;
        align-items: flex-start;
    }

    .abt-pg .top-img-frame {
        width: 100%;
        height: 220px;
    }

    .abt-pg .two-col {
        flex-direction: column;
        gap: 36px;
    }
}

@media (max-width: 768px) {
    .abt-pg .top-h1 {
        font-size: 26px;
    }

    .abt-pg .metric-num {
        font-size: 26px;
    }

    .abt-pg .top-strip {
        padding: 36px 16px 36px;
    }

    .abt-pg .about-body {
        padding: 36px 16px 36px;
    }

    .abt-pg .body-inner {
        gap: 36px;
    }

    .abt-pg .metrics-row {
        gap: 8px;
    }

    .abt-pg .team-list {
        flex-direction: column;
    }
}

@media (max-width: 375px) {
    .abt-pg .top-h1 {
        font-size: 26px;
    }

    .abt-pg .metrics-row {
        flex-direction: column;
    }
}

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

.srv-pg .max-w {
    max-width: 1140px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 36px;
    padding-right: 36px;
}

.srv-pg .t1 {
    padding-top: 72px;
    padding-bottom: 72px;
    position: relative;
}

.srv-pg .t1-bg {
    position: absolute;
    inset: 0;
    background: linear-gradient(158deg, #D7C8B2 0%, transparent 60%);
    z-index: 0;
    overflow: hidden;
}

.srv-pg .t1-bg-anim {
    position: absolute;
    width: 420px;
    height: 420px;
    border-radius: 46px;
    background: rgba(189, 150, 97, 0.13);
    top: -80px;
    right: -60px;
    animation: shadow-drift 7s ease-in-out infinite alternate;
}

@keyframes shadow-drift {
    0% {
        transform: translate(0, 0) rotate(0deg);
        box-shadow: -1px 12px 52px 0 rgba(189, 150, 97, 0.14);
    }

    100% {
        transform: translate(-40px, 30px) rotate(8deg);
        box-shadow: -1px 4px 20px 0 rgba(189, 150, 97, 0.08);
    }
}

.srv-pg .t1-dots {
    position: absolute;
    inset: 0;
    overflow: hidden;
    pointer-events: none;
}

.srv-pg .t1-dots span {
    position: absolute;
    width: 5px;
    height: 5px;
    border-radius: 30px;
    background: rgba(189, 150, 97, 0.18);
    display: block;
}

.srv-pg .t1-inner {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 72px;
}

.srv-pg .t1-text {
    flex: 1 1 0;
    min-width: 0;
}

.srv-pg .t1-pre {
    font-size: 15px;
    line-height: 1.5;
    color: #6b5a3e;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    margin-bottom: 16px;
    display: block;
}

.srv-pg .t1-h1 {
    font-size: 50px;
    line-height: 1.1;
    color: #2a1f0e;
    margin-bottom: 16px;
}

.srv-pg .t1-desc {
    font-size: 15px;
    line-height: 1.8;
    color: #3d2f1a;
    margin-bottom: 36px;
    max-width: 520px;
}

.srv-pg .t1-badges {
    display: flex;
    flex-direction: row;
    gap: 16px;
    flex-wrap: wrap;
}

.srv-pg .t1-badge {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 8px;
    background: #fff;
    border-radius: 11px;
    padding: 8px 16px;
    box-shadow: -1px 4px 20px 0 rgba(189, 150, 97, 0.08);
    font-size: 15px;
    color: #2a1f0e;
    line-height: 1.5;
}

.srv-pg .t1-badge-icon {
    width: 28px;
    height: 28px;
    border-radius: 30px;
    background: #BD9661;
    border: 2px solid #D7C8B2;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.srv-pg .t1-badge-icon svg {
    display: block;
}

.srv-pg .t1-img-wrap {
    flex: 0 0 340px;
    width: 340px;
    position: relative;
}

.srv-pg .t1-img {
    width: 340px;
    height: 400px;
    border-radius: 11px;
    object-fit: cover;
    object-position: center top;
    display: block;
    box-shadow: -1px 12px 52px 0 rgba(189, 150, 97, 0.14);
}

.srv-pg .t1-img-vignette {
    position: absolute;
    inset: 0;
    border-radius: 11px;
    background: radial-gradient(ellipse at 20% 20%, transparent 55%, rgba(189, 150, 97, 0.38) 100%);
    pointer-events: none;
}

.srv-pg .t1-dashed-frame {
    position: absolute;
    top: -8px;
    left: -8px;
    right: -8px;
    bottom: -8px;
    border: 2px dashed rgba(189, 150, 97, 0.35);
    border-radius: 11px;
    pointer-events: none;
}

.srv-pg .svc-list {
    padding-top: 72px;
    padding-bottom: 72px;
    position: relative;
    background: #E6E6E1;
}

.srv-pg .svc-list::before {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 60px;
    background: #fff;
    clip-path: polygon(0 0, 100% 0, 0 100%);
}

.srv-pg .svc-list-head {
    margin-bottom: 36px;
}

.srv-pg .svc-shape {
    width: 14px;
    height: 14px;
    background: #BD9661;
    border-radius: 6px;
    display: inline-block;
    margin-right: 8px;
    vertical-align: middle;
    transform: rotate(45deg);
}

.srv-pg .svc-h2 {
    font-size: 26px;
    line-height: 1.1;
    color: #2a1f0e;
    display: inline;
    vertical-align: middle;
}

.srv-pg .svc-sub {
    font-size: 15px;
    line-height: 1.8;
    color: #3d2f1a;
    margin-top: 8px;
    max-width: 640px;
}

.srv-pg .svc-cards {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.srv-pg .svc-card {
    background: #fff;
    border-radius: 11px;
    padding: 36px;
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 36px;
    box-shadow: -1px 2px 3px 0 rgba(189, 150, 97, 0.07);
    transition: box-shadow 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), transform 0.2s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.srv-pg .svc-card:hover {
    box-shadow: -1px 12px 52px 0 rgba(189, 150, 97, 0.14);
    transform: translateY(-3px);
}

.srv-pg .svc-card-num {
    font-size: 50px;
    line-height: 1.1;
    color: #BD9661;
    font-weight: 700;
    flex-shrink: 0;
    width: 64px;
    text-align: right;
}

.srv-pg .svc-card-body {
    flex: 1 1 0;
    min-width: 0;
}

.srv-pg .svc-card-h {
    font-size: 26px;
    line-height: 1.1;
    color: #2a1f0e;
    margin-bottom: 8px;
}

.srv-pg .svc-card-p {
    font-size: 15px;
    line-height: 1.8;
    color: #3d2f1a;
    margin-bottom: 8px;
}

.srv-pg .svc-card-tags {
    display: flex;
    flex-direction: row;
    gap: 8px;
    flex-wrap: wrap;
    margin-top: 16px;
}

.srv-pg .svc-tag {
    font-size: 15px;
    line-height: 1.5;
    color: #6b5a3e;
    background: #E6E6E1;
    border-radius: 6px;
    padding: 4px 8px;
}

.srv-pg .metrics-sec {
    padding-top: 72px;
    padding-bottom: 72px;
    position: relative;
    overflow: hidden;
}

.srv-pg .metrics-two-tone {
    position: absolute;
    inset: 0;
    z-index: 0;
    overflow: hidden;
}

.srv-pg .metrics-two-tone::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 55%;
    height: 100%;
    background: #D7C8B2;
    clip-path: polygon(0 0, 100% 0, 80% 100%, 0 100%);
}

.srv-pg .metrics-two-tone::after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 55%;
    height: 100%;
    background: #fff;
    clip-path: polygon(20% 0, 100% 0, 100% 100%, 0 100%);
}

.srv-pg .metrics-geo {
    position: absolute;
    inset: 0;
    pointer-events: none;
    overflow: hidden;
    z-index: 0;
}

.srv-pg .geo-shape {
    position: absolute;
    opacity: 0.07;
    background: #BD9661;
}

.srv-pg .geo-s1 {
    width: 40px;
    height: 40px;
    border-radius: 6px;
    top: 15%;
    left: 8%;
    transform: rotate(20deg);
}

.srv-pg .geo-s2 {
    width: 18px;
    height: 18px;
    border-radius: 6px;
    top: 70%;
    left: 20%;
    transform: rotate(45deg);
}

.srv-pg .geo-s3 {
    width: 30px;
    height: 30px;
    border-radius: 30px;
    top: 30%;
    right: 10%;
}

.srv-pg .geo-s4 {
    width: 12px;
    height: 12px;
    border-radius: 6px;
    bottom: 15%;
    right: 25%;
    transform: rotate(30deg);
}

.srv-pg .geo-s5 {
    width: 22px;
    height: 22px;
    border-radius: 6px;
    top: 55%;
    left: 45%;
    transform: rotate(15deg);
}

.srv-pg .metrics-inner {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: row;
    gap: 36px;
    align-items: stretch;
}

.srv-pg .metrics-left {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 36px;
}

.srv-pg .metrics-h2 {
    font-size: 26px;
    line-height: 1.1;
    color: #2a1f0e;
}

.srv-pg .metrics-shape-anchor {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 8px;
    margin-bottom: 8px;
}

.srv-pg .metrics-tri {
    width: 0;
    height: 0;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-bottom: 14px solid #BD9661;
    flex-shrink: 0;
}

.srv-pg .metrics-p {
    font-size: 15px;
    line-height: 1.8;
    color: #3d2f1a;
}

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

.srv-pg .metric-box {
    background: #fff;
    border-radius: 11px;
    padding: 16px;
    box-shadow: -1px 4px 20px 0 rgba(189, 150, 97, 0.08);
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.srv-pg .metric-val {
    font-size: 50px;
    line-height: 1.1;
    color: #BD9661;
    font-weight: 700;
}

.srv-pg .metric-lbl {
    font-size: 15px;
    line-height: 1.5;
    color: #3d2f1a;
}

.srv-pg .metrics-right {
    flex: 0 0 380px;
    width: 380px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.srv-pg .metrics-img {
    width: 100%;
    height: 260px;
    border-radius: 11px;
    object-fit: cover;
    object-position: center;
    display: block;
    box-shadow: -1px 12px 52px 0 rgba(189, 150, 97, 0.14);
}

.srv-pg .metrics-detail-cards {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.srv-pg .detail-card {
    background: rgba(215, 200, 178, 0.4);
    border-radius: 11px;
    padding: 16px;
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 16px;
    transition: background 0.2s cubic-bezier(0.68, -0.55, 0.27, 1.55);
}

.srv-pg .detail-card:hover {
    background: rgba(215, 200, 178, 0.75);
}

.srv-pg .detail-icon {
    width: 40px;
    height: 40px;
    border-radius: 30px;
    background: #BD9661;
    border: 3px solid #D7C8B2;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.srv-pg .detail-txt {
    font-size: 15px;
    line-height: 1.5;
    color: #2a1f0e;
}

.srv-pg .process-sec {
    padding-top: 72px;
    padding-bottom: 72px;
    background: #2a1f0e;
    position: relative;
    overflow: hidden;
}

.srv-pg .process-sec::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 60px;
    background: #E6E6E1;
    clip-path: polygon(0 0, 100% 0, 100% 100%);
}

.srv-pg .process-head {
    margin-bottom: 36px;
}

.srv-pg .process-h2 {
    font-size: 26px;
    line-height: 1.1;
    color: #D7C8B2;
}

.srv-pg .process-shape-row {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 8px;
    margin-bottom: 8px;
}

.srv-pg .process-diamond {
    width: 12px;
    height: 12px;
    background: #BD9661;
    border-radius: 6px;
    transform: rotate(45deg);
    flex-shrink: 0;
}

.srv-pg .process-sub {
    font-size: 15px;
    line-height: 1.8;
    color: #D7C8B2;
    opacity: 0.8;
    max-width: 600px;
    margin-top: 8px;
}

.srv-pg .process-steps {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
}

.srv-pg .step-card {
    background: rgba(215, 200, 178, 0.08);
    border-radius: 11px;
    padding: 36px 16px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
    border: 1px solid rgba(189, 150, 97, 0.2);
    transition: background 0.35s cubic-bezier(0.34, 1.56, 0.64, 1), border-color 0.2s linear;
    cursor: default;
}

.srv-pg .step-card:hover {
    background: rgba(189, 150, 97, 0.15);
    border-color: rgba(189, 150, 97, 0.5);
}

.srv-pg .step-num {
    font-size: 68px;
    line-height: 1.1;
    color: #BD9661;
    font-weight: 700;
    opacity: 0.5;
}

.srv-pg .step-h {
    font-size: 15px;
    line-height: 1.5;
    color: #D7C8B2;
    font-weight: 700;
}

.srv-pg .step-p {
    font-size: 15px;
    line-height: 1.8;
    color: rgba(215, 200, 178, 0.7);
}

.srv-pg .step-icon-wrap {
    width: 44px;
    height: 44px;
    border-radius: 30px;
    background: #BD9661;
    border: 3px solid rgba(215, 200, 178, 0.3);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

@media (max-width: 1024px) {
    .srv-pg .t1-inner {
        gap: 36px;
    }

    .srv-pg .t1-img-wrap {
        flex: 0 0 260px;
        width: 260px;
    }

    .srv-pg .t1-img {
        width: 260px;
        height: 320px;
    }

    .srv-pg .t1-h1 {
        font-size: 50px;
    }

    .srv-pg .metrics-right {
        flex: 0 0 300px;
        width: 300px;
    }

    .srv-pg .process-steps {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .srv-pg .max-w {
        padding-left: 16px;
        padding-right: 16px;
    }

    .srv-pg .t1-inner {
        flex-direction: column;
        gap: 36px;
    }

    .srv-pg .t1-img-wrap {
        width: 100%;
        flex: none;
    }

    .srv-pg .t1-img {
        width: 100%;
        height: 260px;
    }

    .srv-pg .t1-h1 {
        font-size: 26px;
    }

    .srv-pg .svc-card {
        flex-direction: column;
        gap: 16px;
    }

    .srv-pg .svc-card-num {
        width: auto;
        text-align: left;
        font-size: 26px;
    }

    .srv-pg .metrics-inner {
        flex-direction: column;
    }

    .srv-pg .metrics-right {
        width: 100%;
        flex: none;
    }

    .srv-pg .metrics-grid {
        grid-template-columns: 1fr 1fr;
    }

    .srv-pg .process-steps {
        grid-template-columns: 1fr;
    }

    .srv-pg .step-num {
        font-size: 50px;
    }
}

@media (max-width: 375px) {
    .srv-pg .t1-badges {
        flex-direction: column;
    }

    .srv-pg .metrics-grid {
        grid-template-columns: 1fr;
    }

    .srv-pg .t1-h1 {
        font-size: 26px;
    }
}

.cu-pg {
    background-color: #fff;
    overflow-x: clip;
}

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

.cu-pg .split-top__left {
    background-color: #BD9661;
    padding: 72px 36px 72px 72px;
    position: relative;
    overflow: hidden;
}

.cu-pg .split-top__left::before {
    content: '';
    position: absolute;
    inset: 0;
    background-image:
        radial-gradient(circle 2px at 12% 18%, rgba(255, 255, 255, 0.18) 2px, transparent 2px),
        radial-gradient(circle 2px at 34% 72%, rgba(255, 255, 255, 0.12) 2px, transparent 2px),
        radial-gradient(circle 2px at 67% 25%, rgba(255, 255, 255, 0.15) 2px, transparent 2px),
        radial-gradient(circle 2px at 88% 61%, rgba(255, 255, 255, 0.10) 2px, transparent 2px),
        radial-gradient(circle 2px at 22% 88%, rgba(255, 255, 255, 0.14) 2px, transparent 2px),
        radial-gradient(circle 2px at 55% 48%, rgba(255, 255, 255, 0.09) 2px, transparent 2px),
        radial-gradient(circle 2px at 78% 82%, rgba(255, 255, 255, 0.13) 2px, transparent 2px),
        radial-gradient(circle 2px at 44% 14%, rgba(255, 255, 255, 0.11) 2px, transparent 2px);
    pointer-events: none;
}

.cu-pg .split-top__right {
    background-color: #E6E6E1;
    padding: 72px 72px 72px 36px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 36px;
}

.cu-pg .pg-label {
    display: inline-block;
    font-size: 15px;
    line-height: 1.5;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.75);
    margin-bottom: 16px;
}

.cu-pg .pg-h1 {
    font-size: 50px;
    line-height: 1.1;
    color: #fff;
    margin: 0 0 16px;
}

.cu-pg .pg-h1 .punct {
    color: #E6E6E1;
}

.cu-pg .pg-lead {
    font-size: 15px;
    line-height: 1.8;
    color: rgba(255, 255, 255, 0.88);
    margin: 0;
    max-width: 380px;
}

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

.cu-pg .contact-list li {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 16px;
}

.cu-pg .c-icon {
    width: 36px;
    height: 36px;
    flex-shrink: 0;
    border-radius: 6px;
    background-color: #BD9661;
    display: flex;
    align-items: center;
    justify-content: center;
}

.cu-pg .c-icon svg {
    width: 18px;
    height: 18px;
    fill: #fff;
}

.cu-pg .c-text {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.cu-pg .c-text strong {
    font-size: 15px;
    line-height: 1.5;
    color: #2a2218;
    font-weight: 700;
}

.cu-pg .c-text a,
.cu-pg .c-text span {
    font-size: 15px;
    line-height: 1.5;
    color: #4a3e2e;
    text-decoration: none;
    transition: color 0.2s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.cu-pg .c-text a:hover {
    color: #BD9661;
}

.cu-pg .form-wrap {
    background-color: #fff;
    padding: 72px;
    position: relative;
    animation: bg-warmcool 14s ease-in-out infinite;
}

@keyframes bg-warmcool {
    0% {
        background-color: #fff;
    }

    33% {
        background-color: #fdf9f4;
    }

    66% {
        background-color: #f4f6f8;
    }

    100% {
        background-color: #fff;
    }
}

.cu-pg .form-wrap__inner {
    max-width: 1140px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 340px 1fr;
    gap: 72px;
    align-items: start;
}

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

.cu-pg .aside-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background-color: #E6E6E1;
    border-radius: 6px;
    padding: 8px 16px;
    font-size: 15px;
    line-height: 1.5;
    color: #2a2218;
    font-weight: 700;
    width: fit-content;
}

.cu-pg .aside-badge .badge-num {
    font-size: 26px;
    line-height: 1.1;
    color: #BD9661;
    font-weight: 900;
}

.cu-pg .aside-h2 {
    font-size: 26px;
    line-height: 1.5;
    color: #2a2218;
    margin: 0;
}

.cu-pg .aside-desc {
    font-size: 15px;
    line-height: 1.8;
    color: #4a3e2e;
    margin: 0;
}

.cu-pg .aside-note {
    border-radius: 11px;
    border: 2px solid #D7C8B2;
    padding: 16px;
    font-size: 15px;
    line-height: 1.8;
    color: #4a3e2e;
    position: relative;
}

.cu-pg .aside-note::before {
    content: '';
    position: absolute;
    top: -2px;
    left: 16px;
    width: 40px;
    height: 4px;
    background-color: #BD9661;
    border-radius: 30px;
}

.cu-pg .form-body {
    display: flex;
    flex-direction: column;
    gap: 36px;
}

.cu-pg .field-group {
    display: flex;
    flex-direction: column;
    gap: 8px;
    position: relative;
}

.cu-pg .field-group label {
    font-size: 15px;
    line-height: 1.5;
    color: #2a2218;
    font-weight: 700;
}

.cu-pg .field-group input[type="text"],
.cu-pg .field-group input[type="email"],
.cu-pg .field-group input[type="tel"],
.cu-pg .field-group select {
    font-size: 15px;
    line-height: 1.5;
    color: #2a2218;
    background-color: #fff;
    border: 2px solid #D7C8B2;
    border-radius: 6px;
    padding: 16px;
    width: 100%;
    box-sizing: border-box;
    outline: none;
    transition: border-color 0.2s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow 0.25s cubic-bezier(0.34, 1.56, 0.64, 1);
    -webkit-appearance: none;
    appearance: none;
}

.cu-pg .field-group input::placeholder {
    color: #b0a090;
    font-weight: 300;
}

.cu-pg .field-group input:focus,
.cu-pg .field-group select:focus {
    border-color: #BD9661;
    box-shadow: -1px 4px 20px 0 rgba(189, 150, 97, 0.08);
}

.cu-pg .field-group:focus-within .field-tip {
    opacity: 1;
    transform: translateY(0);
}

.cu-pg .field-tip {
    font-size: 15px;
    line-height: 1.5;
    color: #BD9661;
    opacity: 0;
    transform: translateY(-4px);
    transition: opacity 0.2s cubic-bezier(0.34, 1.56, 0.64, 1), transform 0.2s cubic-bezier(0.34, 1.56, 0.64, 1);
    pointer-events: none;
}

.cu-pg .select-wrap {
    position: relative;
}

.cu-pg .select-wrap::after {
    content: '';
    position: absolute;
    right: 16px;
    top: 50%;
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top: 6px solid #BD9661;
    pointer-events: none;
}

.cu-pg .select-wrap select {
    cursor: pointer;
    color: #2a2218;
}

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

.cu-pg .privacy-row {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: 16px;
}

.cu-pg .privacy-row input[type="checkbox"] {
    width: 20px;
    height: 20px;
    flex-shrink: 0;
    margin-top: 2px;
    accent-color: #BD9661;
    cursor: pointer;
}

.cu-pg .privacy-row label {
    font-size: 15px;
    line-height: 1.8;
    color: #4a3e2e;
    cursor: pointer;
}

.cu-pg .privacy-row label a {
    color: #BD9661;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.cu-pg .privacy-row label a:hover {
    color: #2a2218;
}

.cu-pg .submit-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background-color: #BD9661;
    color: #fff;
    border: none;
    border-radius: 11px;
    padding: 16px 36px;
    font-size: 26px;
    line-height: 1.1;
    font-weight: 700;
    cursor: pointer;
    transition: box-shadow 0.35s cubic-bezier(0.34, 1.56, 0.64, 1), transform 0.2s cubic-bezier(0.34, 1.56, 0.64, 1);
    box-shadow: -1px 2px 3px 0 rgba(189, 150, 97, 0.07);
    align-self: flex-start;
}

.cu-pg .submit-btn:hover {
    box-shadow: -1px 12px 52px 0 rgba(189, 150, 97, 0.14);
    transform: translateY(-2px);
}

.cu-pg .submit-btn:active {
    transform: translateY(0);
    box-shadow: -1px 2px 3px 0 rgba(189, 150, 97, 0.07);
}

.cu-pg .submit-btn:focus-visible {
    outline: 3px solid #BD9661;
    outline-offset: 3px;
}

.cu-pg .form-required-note {
    font-size: 15px;
    line-height: 1.5;
    color: #8a7560;
}

@media (max-width: 1024px) {
    .cu-pg .split-top {
        grid-template-columns: 1fr;
    }

    .cu-pg .split-top__left {
        padding: 36px;
    }

    .cu-pg .split-top__right {
        padding: 36px;
    }

    .cu-pg .form-wrap {
        padding: 36px;
    }

    .cu-pg .form-wrap__inner {
        grid-template-columns: 1fr;
        gap: 36px;
    }
}

@media (max-width: 768px) {
    .cu-pg .pg-h1 {
        font-size: 26px;
    }

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

    .cu-pg .submit-btn {
        font-size: 15px;
        padding: 16px 36px;
    }

    .cu-pg .form-wrap {
        padding: 36px 16px;
    }

    .cu-pg .split-top__left {
        padding: 36px 16px;
    }

    .cu-pg .split-top__right {
        padding: 36px 16px;
    }
}

@media (max-width: 375px) {
    .cu-pg .pg-h1 {
        font-size: 26px;
    }

    .cu-pg .aside-h2 {
        font-size: 15px;
    }
}

.succ-page {
    min-height: 60vh;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 72px 16px;
    background-color: #E6E6E1;
}

.succ-page .succ-wrap {
    max-width: 1140px;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 36px;
}

.succ-page .succ-card {
    background: #fff;
    border: 4px solid #BD9661;
    border-radius: 11px;
    padding: 72px 36px;
    max-width: 560px;
    width: 100%;
    text-align: center;
    box-shadow: -1px 4px 20px 0 rgba(189, 150, 97, 0.08), -1px 12px 52px 0 rgba(189, 150, 97, 0.14);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 36px;
}

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

.succ-page .succ-title {
    font-size: 26px;
    line-height: 1.1;
    color: #2a1f0e;
    margin: 0;
}

.succ-page .succ-text {
    font-size: 15px;
    line-height: 1.8;
    color: #3a2e1e;
    margin: 0;
}

.succ-page .succ-divider {
    width: 48px;
    height: 3px;
    background: #BD9661;
    border-radius: 6px;
}

.succ-page .succ-actions {
    display: flex;
    flex-direction: row;
    gap: 16px;
    flex-wrap: wrap;
    justify-content: center;
}

.succ-page .btn-primary {
    display: inline-block;
    background: #BD9661;
    color: #fff;
    font-size: 15px;
    line-height: 1.5;
    padding: 8px 36px;
    border-radius: 6px;
    border: 3px solid #BD9661;
    text-decoration: none;
    box-shadow: -1px 2px 3px 0 rgba(189, 150, 97, 0.07);
    transition: box-shadow 0.25s cubic-bezier(0.34, 1.56, 0.64, 1), background 0.18s cubic-bezier(0.68, -0.55, 0.27, 1.55);
    cursor: pointer;
}

.succ-page .btn-primary:hover {
    background: #a07d4a;
    border-color: #a07d4a;
    box-shadow: -1px 4px 20px 0 rgba(189, 150, 97, 0.18), -1px 12px 52px 0 rgba(189, 150, 97, 0.12);
}

.succ-page .btn-primary:focus {
    outline: 3px solid #BD9661;
    outline-offset: 3px;
}

.succ-page .btn-secondary {
    display: inline-block;
    background: transparent;
    color: #BD9661;
    font-size: 15px;
    line-height: 1.5;
    padding: 8px 36px;
    border-radius: 6px;
    border: 3px solid #D7C8B2;
    text-decoration: none;
    box-shadow: -1px 2px 3px 0 rgba(189, 150, 97, 0.07);
    transition: box-shadow 0.32s cubic-bezier(0.34, 1.56, 0.64, 1), border-color 0.2s cubic-bezier(0.68, -0.55, 0.27, 1.55);
    cursor: pointer;
}

.succ-page .btn-secondary:hover {
    border-color: #BD9661;
    box-shadow: -1px 4px 20px 0 rgba(189, 150, 97, 0.12);
}

.succ-page .btn-secondary:focus {
    outline: 3px solid #BD9661;
    outline-offset: 3px;
}

@media (max-width: 768px) {
    .succ-page {
        padding: 36px 16px;
    }

    .succ-page .succ-card {
        padding: 36px 16px;
        gap: 16px;
    }

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

    .succ-page .btn-primary,
    .succ-page .btn-secondary {
        text-align: center;
    }
}