.prices-page {
    --prices-font: 24px;
    --prices-line: 38px;
    --prices-small: 20px;
    --prices-small-line: 32px;
    --prices-column-font: 34px;
    --prices-column-line: 37px;
    --prices-row-space: 20px;
    --prices-detail-gap: 6px;
    --prices-letter: -.5px;
    container-type: inline-size;
    color: #2a2a2a;
    font-family: Inter, Arial, sans-serif;
}
.prices-container { box-sizing: border-box; max-width: 1900px; margin: auto; padding-inline: 80px; }
.prices-heading *, .prices-section *, .prices-consultation * { box-sizing: border-box; }
.prices-heading { padding-block: 120px 90px; }
.prices-heading h1 { margin: 0; font-size: 120px; line-height: 120px; font-weight: 500; letter-spacing: -2.5px; }
.prices-section__heading { padding-block: 120px 90px; }
.prices-section h2, .prices-consultation h2 { margin: 0; font-size: 54px; line-height: 59px; font-weight: 500; letter-spacing: -2px; }
.prices-section__heading p { margin: 20px 0 0; color: rgb(42 42 42 / 60%); font-size: var(--prices-font); line-height: var(--prices-line); letter-spacing: var(--prices-letter); }
.prices-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 40px; padding-bottom: 120px; }
.prices-grid--single { grid-template-columns: minmax(0, 1fr); }
.prices-column { min-width: 0; padding-top: 10px; }
.prices-column--continuation { padding-top: calc(30px + var(--prices-column-line)); }
.prices-column h3 { margin: 0 0 20px; font-size: var(--prices-column-font); line-height: var(--prices-column-line); font-weight: 500; letter-spacing: -1px; }
.price-list { margin: 0; border-top: 1px solid rgb(42 42 42 / 30%); font-size: var(--prices-font); line-height: var(--prices-line); letter-spacing: var(--prices-letter); }
.price-item { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 40px; padding-block: var(--prices-row-space); border-bottom: 1px solid rgb(42 42 42 / 30%); }
.price-item > dt { display: flex; flex-direction: column; align-items: start; gap: var(--prices-detail-gap); min-width: 0; }
.price-item dd, .price-rates { margin: 0; }
.price-item__note { color: rgb(42 42 42 / 60%); font-size: var(--prices-small); line-height: var(--prices-small-line); }
.price-amount, .price-duration { display: inline-flex; align-items: center; vertical-align: top; border: 1px solid #cfd8be; border-radius: 30px; white-space: nowrap; }
.price-amount { padding-inline: 12px; }
.price-duration { gap: 10px; padding-inline: 8px; border-color: #e6e6e7; color: rgb(42 42 42 / 60%); }
.price-duration::before { content: ''; flex: 0 0 18px; height: 18px; background: url('export/images/tild3661-3230-4730-a132-303463303739__vector.svg') center / contain no-repeat; opacity: .6; }
.price-item--rates { display: block; }
.price-item--rates > dd { margin-top: var(--prices-detail-gap); }
.price-rates { display: grid; gap: var(--prices-detail-gap); }
.price-rates > div { display: flex; align-items: start; justify-content: space-between; gap: 10px; }
.prices-consultation { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: center; gap: 40px; padding-block: 40px; text-align: center; }
.prices-consultation a { display: flex; align-items: center; justify-content: center; min-height: 86px; border: 1px solid #2a2a2a; background: #cfd8be; color: inherit; font-size: var(--prices-font); line-height: 1; letter-spacing: var(--prices-letter); text-decoration: none; }
.prices-consultation a:hover { color: #fff; background: #2a2a2a; }
.prices-consultation a:focus-visible { outline: 2px solid #2a2a2a; outline-offset: 4px; }
@media (max-width: 1899px) {
    .prices-page { --prices-font: 16px; --prices-line: 26px; --prices-small: 14px; --prices-small-line: 22px; --prices-column-font: 24px; --prices-column-line: 26px; }
    .prices-container { max-width: 1200px; padding-inline: 20px; }
    .prices-heading { padding-block: 90px 40px; }
    .prices-heading h1 { font-size: 72px; line-height: 72px; }
    .prices-section__heading { padding-block: 90px 40px; }
    .prices-section h2, .prices-consultation h2 { font-size: 36px; line-height: 40px; letter-spacing: -1px; }
    .prices-grid { padding-bottom: 90px; }
    .price-duration { gap: 6px; }
    .price-duration::before { flex-basis: 12px; height: 12px; }
    .prices-consultation { padding-block: 24px; }
    .prices-consultation a { min-height: 60px; }
}
@media (max-width: 1199px) {
    .prices-page { --prices-font: 14px; --prices-line: 22px; --prices-small: 12px; --prices-small-line: 19px; }
    .prices-container { max-width: 960px; padding-inline: 10px; }
    .prices-heading, .prices-section__heading { padding-block: 60px 30px; }
    .prices-section h2, .prices-consultation h2 { font-size: 26px; line-height: 29px; }
    .prices-grid { gap: 20px; padding-bottom: 60px; }
    .prices-consultation { gap: 20px; }
    .prices-consultation a { min-height: 50px; font-size: 16px; }
}
@media (max-width: 959px) {
    .prices-container { max-width: 640px; }
    .prices-heading h1 { font-size: 62px; line-height: 62px; }
    .prices-grid { grid-template-columns: minmax(0, 1fr); gap: 40px; }
    .prices-grid--joined { gap: 0; }
    .prices-column--continuation { padding-top: 0; }
    .prices-column--continuation .price-list { border-top: 0; }
    .price-item { column-gap: 20px; }
    .prices-consultation { grid-template-columns: minmax(0, 1fr); max-width: 440px; }
}
@media (max-width: 639px) {
    .prices-page { --prices-font: 3.75cqw; --prices-line: 6cqw; --prices-small: 3.125cqw; --prices-small-line: 5cqw; --prices-column-font: 6.25cqw; --prices-column-line: 6.875cqw; --prices-row-space: 3.75cqw; --prices-detail-gap: 1.875cqw; --prices-letter: -.15625cqw; }
    .prices-container { max-width: none; padding-inline: 6.25cqw; }
    .prices-heading { padding-block: 9.375cqw 6.25cqw; }
    .prices-heading h1 { font-size: 13.75cqw; line-height: 13.75cqw; letter-spacing: -.3125cqw; }
    .prices-section__heading { padding-block: 9.375cqw; }
    .prices-section h2, .prices-consultation h2 { font-size: 7.5cqw; line-height: 8.25cqw; letter-spacing: -.3125cqw; }
    .prices-section__heading p { margin-top: 3.125cqw; }
    .prices-grid { gap: 9.375cqw; padding-bottom: 9.375cqw; }
    .prices-grid--joined { gap: 0; }
    .prices-column { padding-top: 0; }
    .prices-column h3 { margin-bottom: 3.75cqw; letter-spacing: -.3125cqw; }
    .price-item { column-gap: 3.125cqw; }
    .price-list { border-top-width: .3125cqw; }
    .price-item { border-bottom-width: .3125cqw; }
    .price-amount { padding-inline: 3.75cqw; }
    .price-duration { gap: 1.875cqw; padding-inline: 2.5cqw; }
    .price-duration::before { flex-basis: 3.125cqw; height: 3.125cqw; }
    .prices-consultation { gap: 6.25cqw; padding-block: 9.375cqw; }
    .prices-consultation a { min-height: 15.625cqw; font-size: var(--prices-font); }
}
