/* ========================
   VARIABLES
======================== */
:root {
    /* цвета */
    --static-white: #fff;
    --static-white-subtle: rgba(255, 255, 255, 0.48);
    --static-black: #000;
    --static-black-subtle: rgba(26, 26, 26, 0.48);
    --static-primary-hover: rgba(255, 255, 255, 0.88);

    --bg-base-primary: rgba(243, 244, 246, 1);
    --bg-base-secondary: rgba(255, 255, 255, 1);

    --bg-statis-white-subtle: rgba(255, 255, 255, 0.24);
    --bg-statis-black-subtle: rgba(26, 26, 26, 0.16);

    --bg-sentiment-accent: rgba(112, 134, 252, 1);
    --bg-sentiment-accent-subtle: rgba(112, 134, 252, 0.12);
    --bg-sentiment-negative-subtle: rgba(239, 68, 68, 0.16);

    --border-static-white-subtle: rgba(255, 255, 255, 0.16);
    --border-base-neutral: rgba(107, 114, 128, 0.16);
    --border-base-neutral-hover: rgba(82, 82, 82, 0.32);
    --border-sentiment-negative: rgba(239, 68, 68, 1);

    --content-base-primary: rgba(17, 24, 39, 1);
    --content-base-secondary: rgba(115, 115, 115, 1);
    --content-base-tertiary: rgba(156, 163, 175, 1);
    --content-sentiment-accent: rgba(112, 134, 252, 1);
    --content-sentiment-positive: rgba(34, 197, 94, 1);
    --content-sentiment-warning: rgba(245, 158, 11, 1);
    --content-sentiment-negative: rgba(239, 68, 68, 1);

    --control-neutral-primary: rgba(82, 82, 82, 0.12);
    --control-neutral-primary-hover: rgba(82, 82, 82, 0.16);
    --control-neutral-secondary: rgba(107, 114, 128, 0.08);
    --control-neutral-secondary-hover: rgba(82, 82, 82, 0.12);

    --control-primary: rgba(112, 134, 252, 1);
    --control-primary-hover: rgba(83, 105, 224, 1);

    /* OPACITY*/
    --active: 0.8;
    --disabled: 0.4;

    /* Радиусы, отступы и размеры */
    --container-width: 1680px;
    --container-padding: 60px;

    --spacing-60: 60px;
    --spacing-48: 48px;
    --spacing-40: 40px;
    --spacing-32: 32px;
    --spacing-24: 24px;
    --spacing-20: 20px;
    --spacing-16: 16px;
    --spacing-12: 12px;

    --fs-24: 24px;
    --fs-28: 28px;
    --fs-32: 32px;
    --fs-36: 36px;
    --fs-40: 40px;
    --fs-44: 44px;
    --fs-48: 48px;
    --fs-56: 56px;
    --fs-64: 64px;

    /* SIZES */
    --base-size-2xs: 24px;
    --base-size-xs: 28px;
    --base-size-s: 32px;
    --base-size-m: 36px;
    --base-size-l: 40px;
    --base-size-xl: 44px;
    --base-size-1xl: 48px;
    --base-size-2xl: 56px;
    --base-size-3xl: 64px;

    /*Typography/Body/L */
    --body-l-fs: 18px;
    --body-l-lh: 22px;

    /*Typography/Body/M */
    --body-m-fs: 16px;
    --body-m-lh: 20px;

    /*Typography/Body/S */
    --body-s-fs: 14px;
    --body-s-lh: 18px;

    /*Typography/Caption/L */
    --caption-l-fs: 10px;
    --caption-l-lh: 12px;

    /*Typography/Caption/M */
    --caption-m-fs: 12px;
    --caption-m-lh: 16px;

    /*Typography/Headline/H1/*/
    --h1-fs: 48px;
    --h1-lh: 56px;

    /*Typography/Headline/H2/*/
    --h2-fs: 40px;
    --h2-lh: 48px;

    /*Typography/Headline/H3/*/
    --h3-fs: 32px;
    --h3-lh: 38px;

    /*Typography/Headline/H4/*/
    --h4-fs: 24px;
    --h4-lh: 30px;

    /*Typography/Headline/H5/*/
    --h5-fs: 20px;
    --h5-lh: 24px;

    /*Radius*/
    --radius-s: 12px;
    --radius-m: 16px;
    --radius-l: 24px;
    --radius-xl: 32px;
    --radius-full: 999px;

    /* Шрифты */
    --font-main: 'Inter', sans-serif;
}
@media (max-width: 1280px) {
    :root {
        /* Радиусы, отступы и размеры */
        --container-width: 1160px;
        --container-padding: clamp(32px, 4.6875vw, 60px);
    }
}
@media (max-width: 1024px) {
    :root {
        /* Радиусы, отступы и размеры */
        --container-padding: clamp(16px, 3.125vw, 32px);
    }
}
@media (max-width: 768px) {
    :root {
        /* Радиусы, отступы и размеры */
        --container-padding: 16px;
    }
}

/* ========================
   BASE LAYOUT
======================== */
body{
    width: 100%;
    min-height: 100%;
    margin: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    overflow-x: hidden;
    font-size: 1rem;
    font-family: 'Gilroy', sans-serif;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    scroll-behavior: smooth;
}
body.lock,
body:has(.v-overlay--active),
body:has(.pm-popup-overlay.active){
    overflow: hidden;
    padding-right: var(--scrollbar-width);
}

/* box model внутри твоей зоны */
.pm-main * {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-family: "Gilroy", sans-serif;
}

/* ========================
   CONTAINER
======================== */

.pm-container {
    max-width: calc(var(--container-width) + var(--container-padding) * 2);
    margin: 0 auto;
    padding: 0 var(--container-padding);
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    z-index: 1;
    position: relative;
}

.pm-section{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: var(--spacing-60) 0;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: var(--spacing-32);
    -ms-flex-item-align: stretch;
    -ms-grid-row-align: stretch;
    align-self: stretch;
}

@media(max-width: 768px){
    .pm-section{
        padding: var(--spacing-24) 0;
    }
}
@media(max-width: 375px){
    .pm-section{
        padding: var(--spacing-32) 0;
    }
}

/* ========================
   TYPOGRAPHY
======================== */

.pm-main h1,
.pm-main h2,
.pm-main h3,
.pm-main h4,
.pm-main h5,
.pm-main h6 {
    margin: 0;
}

.pm-main p {
    margin: 0;
}

.pm-main ul,
.pm-main ol {
    margin: 0;
    padding: 0;
    list-style: none;
}

.pm-main li{
    padding: 0;
    margin: 0;
    line-height: unset;
}

.pm-main h1{
    color: var(--static-white, #FFF);

    /* Display/M/Semi Bold */
    font-size: clamp(var(--fs-48, 48px), 4vw ,var(--fs-64, 64px));
    font-weight: 600;
    line-height: 1.125;
}
@media(max-width: 1280px){
    .pm-main h1{
        font-size: clamp(var(--fs-40, 40px), 4vw ,var(--fs-48, 48px));
        line-height: 1.167;
    }
}
@media(max-width: 768px){
    .pm-main h1{
        font-size: clamp(var(--fs-32, 32px), 6vw ,var(--fs-40, 40px));
        line-height: 1.2;
    }
}
@media(max-width: 375px){
    .pm-main h1{
        font-size: var(--fs-32, 32px);
        line-height: 1.1875;
    }
}

.pm-subtitle{
    /* Body/L/Medium */
    font-size: var(--body-l-fs, 18px);
    font-weight: 400;
    line-height: var(--body-l-lh, 22px);
    letter-spacing: 0.002em;
}
@media(max-width: 1280px){
    .pm-subtitle{
        font-size: var(--body-m-fs, 16px);
        line-height: var(--body-m-lh);
    }
}
@media(max-width: 768px){
    .pm-subtitle{
        font-size: var(--body-s-fs, 14px);
        line-height: var(--body-s-lh);
    }
}
@media(max-width: 375px){
    .pm-subtitle{
        font-size: var(--caption-m-fs, 12px);
        line-height: var(--caption-m-lh);
    }
}

.pm-section-title{
    color: var(--content-base-primary);
    /* Headline/H1/Semi Bold */
    font-size: clamp(var(--h2-fs), 3vw,var(--h1-fs));
    font-weight: 600;
    line-height: 1.1667;
}
@media(max-width: 1280px){
    .pm-section-title{
        font-size: clamp(var(--h4-fs), 3.125vw, var(--h2-fs));
        line-height: 1.2;
    }
}
@media(max-width: 768px){
    .pm-section-title{
        font-size: var(--h4-fs);
        line-height: var(--h4-lh);
    }
}

.pm-section-subtitle{
    color: var(--content-base-tertiary);
    /* Body/L/Medium */
    font-size: var(--body-l-fs);
    font-weight: 500;
    line-height: var(--body-l-lh);
}
@media(max-width: 1280px){
    .pm-section-subtitle{
        font-size: clamp(var(--body-s-fs), 1.41vw, var(--body-l-fs));
        line-height: 1.22;
    }
}
@media(max-width: 768px){
    .pm-section-subtitle{
        font-size: var(--body-s-fs);
        line-height: var(--body-s-lh);
    }
}

.pm-required{
    color: var(--content-sentiment-negative);
}

.pm-underline{
    text-decoration: underline;
}

/* ========================
   LINKS
======================== */

.pm-main a {
    text-decoration: none;
}

/* ========================
   INPUTS
======================== */
input.pm-input:-webkit-autofill {
    -webkit-box-shadow: 0 0 0 1000px transparent inset;
    -webkit-text-fill-color: inherit;
    transition: background-color 9999s ease-in-out 0s;
}
.pm-page-dark .pm-popup-feedback__container input.pm-input:-webkit-autofill {
    -webkit-box-shadow: 0 0 0 1000px transparent inset;
    -webkit-text-fill-color: #F9FAFB;
}
.pm-input__container{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 8px;
    -ms-flex-item-align: stretch;
    -ms-grid-row-align: stretch;
    align-self: stretch;
}

.pm-input-wrapper{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    height: var(--base-size-2xl);
    padding: 0 var(--spacing-12);
    -ms-flex-item-align: stretch;
    -ms-grid-row-align: stretch;
    align-self: stretch;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    border-radius: 16px;
    background: var(--control-neutral-primary);
    position: relative;
    -webkit-transition: .3s ease;
    -o-transition: .3s ease;
    transition: .3s ease;
}
@media(any-hover: hover){
    .pm-input-wrapper:not(:has(input:read-only)):hover{
        background: var(--control-neutral-primary-hover);
    }
}

.pm-input-wrapper:has(input:read-only){
    opacity: var(--disabled);
    background: rgba(107, 114, 128, 0.12);
    pointer-events: none;
}

.pm-input-wrapper.pm-input-wrapper--phone{
    padding: 4px 12px 4px 4px;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    align-items: center;
    gap: 12px;
}

.pm-input__container.error .pm-input-wrapper{
    background: var(--bg-sentiment-negative-subtle);
}

.pm-input__error{
    color: var(--content-sentiment-negative);
    /* Body/S/Medium */
    font-size: var(--body-s-fs);
    font-weight: 500;
    line-height: var(--body-s-lh);
    position: absolute;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    -webkit-transition: .2s ease;
    -o-transition: .2s ease;
    transition: .2s ease;
}

.pm-input__container.error .pm-input__error{
    opacity: 1;
    position: unset;
    visibility: visible;
    pointer-events: auto;
}

.pm-input::-webkit-input-placeholder {
    color: var(--content-base-secondary);
    /* Body/M/Semi Bold */
    font-size: var(--body-m-fs);
    font-weight: 600;
    line-height: var(--body-m-lh);
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.pm-input::-moz-placeholder {
    color: var(--content-base-secondary);
    /* Body/M/Semi Bold */
    font-size: var(--body-m-fs);
    font-weight: 600;
    line-height: var(--body-m-lh);
    -moz-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.pm-input:-ms-input-placeholder {
    color: var(--content-base-secondary);
    /* Body/M/Semi Bold */
    font-size: var(--body-m-fs);
    font-weight: 600;
    line-height: var(--body-m-lh);
    -ms-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.pm-input::-ms-input-placeholder {
    color: var(--content-base-secondary);
    /* Body/M/Semi Bold */
    font-size: var(--body-m-fs);
    font-weight: 600;
    line-height: var(--body-m-lh);
    -ms-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.pm-input-label,
.pm-input::placeholder {
    color: var(--content-base-secondary);
    /* Body/M/Semi Bold */
    font-size: var(--body-m-fs);
    font-weight: 600;
    line-height: var(--body-m-lh);
    -webkit-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.pm-input-wrapper.active .pm-input-label{
    font-size: var(--caption-m-fs);
    font-weight: 500;
    line-height: var(--caption-m-lh);
}

.pm-input-wrapper.active.pm-input-wrapper--phone .pm-input-label{
    display: none;
}

.pm-input-wrapper.active .pm-input-label .pm-required{
    color: inherit;
}

.pm-input{
    font-family: 'Gilroy', sans-serif;
    color: var(--content-base-primary);
    /* Body/M/Medium */
    font-size: var(--body-m-fs);
    font-weight: 500;
    line-height: var(--body-m-lh);
    border: none;
    background: none;

    position: absolute;
    top: 50%;
    left: var(--spacing-12);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    opacity: 0;
    -webkit-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    pointer-events: auto;
}

.pm-input:disabled{
    color: #171717;
}

.pm-input-wrapper.active .pm-input{
    position: unset;
    opacity: 1;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
}

.pm-input__phone-code{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 49px;
    height: auto;
    padding: 9px 22px;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-item-align: stretch;
    -ms-grid-row-align: stretch;
    align-self: stretch;
    border-radius: var(--radius-s);
    background: var(--control-neutral-secondary);

    color: var(--content-base-primary);
    text-align: center;
    /* Body/M/Medium */
    font-size: var(--body-m-fs);
    font-weight: 500;
    line-height: var(--body-m-lh);
}

.pm-checkbox{
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    position: absolute;
}

.pm-checkbox-label-container{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 24px;
    height: 24px;
    min-width: 24px;
    min-height: 24px;
    padding: 3px;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    cursor: pointer;
}

.pm-checkbox-label{
    width: 100%;
    height: 100%;
    border-radius: 6px;
    border: 1px solid var(--border-base-neutral);
    background: var(--control-neutral-primary);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-transition: .15s ease;
    -o-transition: .15s ease;
    transition: .15s ease;
}

.pm-input__container.error .pm-checkbox-label{
    border-color: var(--border-sentiment-negative);
}

.pm-checkbox-label svg{
    opacity: 0;
    -webkit-transition: .15s ease;
    -o-transition: .15s ease;
    transition: .15s ease;
}

.pm-checkbox:checked + .pm-checkbox-label-container .pm-checkbox-label {
    background: var(--control-primary);
    border-color: var(--control-primary);
}

.pm-checkbox:checked + .pm-checkbox-label-container .pm-checkbox-label svg {
    opacity: 1;
}

.pm-checkbox-text{
    color: var(--content-base-primary);
    /* Body/S/Medium */
    font-size: var(--body-s-fs);
    font-weight: 500;
    line-height: var(--body-s-lh);
}
@media(max-width: 355px){
    .pm-checkbox-text{
        font-size: 13px;
    }
}

.pm-checkbox-text a{
    color: inherit;
    font-size: inherit;
}

.pm-input-wrapper.pm-counter{
   display: flex;
    justify-content: space-between;
    flex-direction: row;
    align-items: center;
}

.pm-input.pm-counter__value,
.pm-input.pm-month__value{
    display: flex;
    align-items: baseline;
    gap: 2px;
    position: static;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: none;
    font-weight: 600;
}

.pm-counter__btn{
    border: none;
    padding: 0;
    margin: 0;
    background: transparent;
    cursor: pointer;
}

.pm-counter__input {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.pm-range-title{
    color: #171717;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.25;
}

.pm-range-input{
    -webkit-appearance: none;
    width: 100%;
    background: transparent;
    margin-top: 12px;
}

/* трек */
.pm-range-input::-webkit-slider-runnable-track {
    height: 2px;
    border-radius: 999px;
}

.pm-range-input::-moz-range-track {
    height: 2px;
    border-radius: 999px;
}

/* кружок */
.pm-range-input::-webkit-slider-thumb {
    -webkit-appearance: none;

    width: 24px;
    height: 24px;
    border-radius: 999px;

    border: 8px solid #7086FC;
    background: #fff;
    box-shadow: 0 0 0 4px #fff;
    cursor: pointer;

    margin-top: -11px; /* выравнивание */
}

.pm-range-input::-moz-range-thumb {
    width: 24px;
    height: 24px;
    border-radius: 999px;
    cursor: pointer;

    border: 8px solid #7086FC;
    background: #fff;
}


.pm-switch {
    position: relative;
    display: inline-block;
    width: 40px;
    height: 24px;
}

.pm-switch input {
    opacity: 0;
    width: 0;
    height: 0;
}

.pm-switch-slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: var(--control-neutral-primary);
    -webkit-transition: .3s;
    transition: .3s;
    border-radius: var(--radius-full);
}

.pm-switch-slider:before {
    position: absolute;
    content: "";
    height: 20px;
    width: 20px;
    left: 2px;
    bottom: 2px;
    background-color: white;
    -webkit-transition: .3s;
    transition: .3s;
    border-radius: var(--radius-full);
}

.pm-switch input:checked + .pm-switch-slider {
    background-color: var(--control-primary);
}

.pm-switch-slider:active{
    background: var(--control-neutral-primary-hover);
    opacity: var(--active);
}

.pm-switch input:checked + .pm-switch-slider:active {
    background-color: var(--control-primary-hover);
    opacity: var(--active);
}

@media(any-hover: hover){
    .pm-switch-slider:hover{
        background: var(--control-neutral-primary-hover);
    }

    .pm-switch input:checked + .pm-switch-slider:hover {
        background-color: var(--control-primary-hover);
    }
}

.pm-switch input:checked + .pm-switch-slider:before {
    -webkit-transform: translateX(16px);
    -ms-transform: translateX(16px);
    transform: translateX(16px);
}

.pm-select {
    position: relative;
    width: 100%;
    max-width: 314px;
    display: flex;
    justify-content: flex-end;
    height: fit-content;
}

.pm-select__selected {
    display: flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
    padding: 8px 0;
    font-size: 16px;
    line-height: 24px;
    color: #000;
}

.pm-select__arrow {
    transition: transform 0.3s ease;
    flex-shrink: 0;
}
.pm-select__arrow--mobile{
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
}
@media (max-width: 1130px) {
    .pm-select__arrow{
        display: none;
    }
    .pm-select__arrow--mobile{
        visibility: visible;
        opacity: 1;
        pointer-events: auto;
    }
}

ul.pm-select__dropdown {
    position: absolute;
    top: calc(100% + 8px);
    left: 0;
    right: 0;
    margin: 0;
    padding: 8px 12px;
    display: flex;
    flex-direction: column;
    gap: 4px;
    list-style: none;
    background: #FFF;
    border-radius: 16px;
    box-shadow: 0 4px 24px 0 rgba(203, 208, 233, 0.40);
    opacity: 0;
    visibility: hidden;
    transform: translateY(-10px);
    transition: all 0.3s ease;
    z-index: 1000;
}

.pm-select__dropdown.open {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.pm-select__option {
    padding: 8px 0;
    height: 40px;
    display: flex;
    align-items: center;
    cursor: pointer;
    font-size: 16px;
    line-height: 20px;
    font-weight: 600;
    color: var(--content-base-primary);
    transition: background 0.2s ease, color .3s ease;
}
@media(any-hover: hover){
    .pm-select__option:hover{
        color: var(--content-sentiment-accent);
    }
}

.pm-select__option.selected {
    position: relative;
}

.pm-select__option::before{
    content: unset;
}

.pm-select__option.selected::after {
    content: '';
    position: absolute;
    right: 10px;
    width: 24px;
    height: 24px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M10.1064 16.7735C9.83976 16.7735 9.58643 16.6668 9.39976 16.4801L5.62643 12.7068C5.23976 12.3201 5.23976 11.6801 5.62643 11.2935C6.01309 10.9068 6.65309 10.9068 7.03976 11.2935L10.1064 14.3601L16.9598 7.5068C17.3464 7.12013 17.9864 7.12013 18.3731 7.5068C18.7598 7.89346 18.7598 8.53346 18.3731 8.92013L10.8131 16.4801C10.6264 16.6668 10.3731 16.7735 10.1064 16.7735Z' fill='rgba(112, 134, 252, 1)'/%3E%3C/svg%3E");
    background-size: contain;
    background-repeat: no-repeat;
}

/* ========================
   BUTTONS
======================== */

.pm-main button {
    font-family: inherit;
    cursor: pointer;
}

.pm-btn{
    font-family: 'Gilroy', sans-serif;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 8px;
    border-radius: var(--radius-s);
    padding: 0 var(--spacing-24);
    height: var(--base-size-1xl, 48px);
    -webkit-transition: .3s ease;
    -o-transition: .3s ease;
    transition: .3s ease;
    cursor: pointer;
    border: none;

    /* Body/L/Semi Bolt */
    font-size: var(--body-m-fs);
    font-weight: 500;
    line-height: var(--body-m-lh);
}
@media(max-width: 768px){
    .pm-btn{
        width: 100%;
    }
}
@media(max-width: 375px){
    .pm-btn{
        height: var(--base-size-2xl, 56px);
    }
}

.pm-btn--outline{
    border: 1px solid var(--border-static-white-subtle, rgba(255, 255, 255, 0.16));
    color: var(--static-white);
    padding: 0 calc(var(--spacing-24) - 1px);
    background: transparent;
}

.pm-btn--primary{
    height: var(--base-size-1xl);
    padding: 0 var(--spacing-24);
    border-radius: var(--radius-s);
    background: var(--control-primary);

    color: var(--static-white);
    /* Body/M/Semi Bold */
    font-family: inherit;
    font-size: var(--body-m-fs);
    font-weight: 500;
    line-height: 1.25;
}
.pm-btn--primary:active{
    opacity: var(--active);
}

.pm-btn--primary.pm-btn--primary--subtle{
    background: rgba(112, 134, 252, 0.12);
    color: var(--content-sentiment-accent);
    font-weight: 600;
}
.pm-btn--primary.pm-btn--primary--subtle:active{
    background: rgba(112, 134, 252, 0.24);
    opacity: var(--active);
}

.pm-btn--secondary{
    border: none;
    background: var(--static-white, #FFF);
    color: var(--static-black);
    height: var(--base-size-1xl);

    /* Body/M/Semi Bold */
    font-size: var(--body-m-fs, 16px);
    font-weight: 600;
    line-height: var(--body-m-lh, 20px);
}

.pm-btn--secondary:active{
    opacity: var(--active);
}

.pm-btn--secondary .pm-btn-text{
    min-width: 3.8125em;
}

.pm-btn--neutral{
    background: var(--control-neutral-primary);
    color: var(--content-base-primary);
    font-weight: 600;
}

.pm-btn--neutral:active{
    opacity: var(--active);
}

.pm-btn-icon--arrow{
    transition: .3s ease;
}

.pm-btn--ghost-primary{
    cursor: pointer;
    display: inline-flex;
    height: var(--base-size-xs);
    align-items: center;
    gap: 8px;
    transition: .3s ease;
    border: none;
    background: transparent;
    padding: 0;

    color: var(--content-sentiment-accent);
    font-size: 16px;
    font-weight: 600;
    line-height: 1.25;
}

.pm-btn--ghost-primary:active{
    opacity: var(--active);
}
@media(max-width: 1280px){
    .pm-btn--ghost-primary{
        height: var(--base-size-2xs);
        font-size: 14px;
        line-height: 18px;
    }
}

.pm-btn--link{
    display: inline-flex;
    height: var(--base-size-2xs);
    align-items: center;
    gap: 8px;

    border: none;
    background: none;
    padding: 0;
    margin: 0;
    color: var(--content-sentiment-accent);
    font-size: clamp(14px, 0.888vw, 16px);
    font-weight: 600;
    line-height: 1.25;
    transition: .3s ease;
}
.pm-btn--link.pm-btn--link--secondary{
    color: var(--content-base-primary);
}
@media(max-width: 1280px){
    .pm-btn--link{
        font-size: 14px;
        line-height: 18px;
    }
}

.pm-btn--link.pm-btn--link--secondary:active{
    opacity: var(--active);
}

.pm-btn--link .pm-btn-text{
    text-decoration: underline;
}

.pm-btn--link .pm-btn-icon path{
    fill: var(--content-sentiment-accent);
}

@media(any-hover: hover){
    .pm-btn:hover .pm-btn-icon--arrow{
        transform: translateX(4px);
    }

    .pm-btn--primary:hover{
        background: var(--control-primary-hover);
    }

    .pm-btn--primary.pm-btn--primary--subtle:hover{
        background: rgba(112, 134, 252, 0.24);
    }

    .pm-btn--secondary:hover{
        background: var(--static-primary-hover, #FFF);
    }

    .pm-btn--neutral:hover{
        background: var(--control-neutral-primary-hover);
    }

    .pm-btn--outline:hover{
        border-color: var(--static-white);
    }

    .pm-btn--ghost-primary:hover{
        opacity: var(--active);
    }

    .pm-btn--link:hover{
        opacity: var(--active);
    }
}

.pm-btn-icon,
.btn-icon{
    width: 24px;
    height: 24px;
}

/* ========================
   Компоненты блоков COMPONENTS
======================== */
.pm-section__headline-container{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: var(--spacing-16);
    max-width: 100%;
}
@media(max-width: 768px){
    .pm-section__headline-container{
        gap: 8px;
    }
}
@media(max-width: 375px){
    .pm-section__headline-container{
        gap: 12px;
    }
}

.pm-badge{
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 8px;
}

.pm-badge__rectangle{
    width: 8px;
    height: 8px;
    aspect-ratio: 1/1;
    background: var(--content-sentiment-accent);
}

.pm-badge-text{
    color: var(--content-sentiment-accent);
    /* Body/L/Semi Bolt */
    font-size: var(--body-l-fs);
    font-weight: 600;
    line-height: var(--body-l-lh);
}
@media(max-width: 768px){
    .pm-badge-text{
        /* Body/S/Semi Bold */
        font-size: var(--body-s-fs);
        line-height: var(--body-s-lh);
    }
}

/* ========================
   TABS
======================== */
.pm-tab-item{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: clamp(var(--base-size-s), 3vw, var(--base-size-xl));
    padding: 0 var(--spacing-16);
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 8px;
    border-radius: var(--radius-full);
    background: var(--bg-base-primary);
    border: none;
    min-width: -webkit-fit-content;
    min-width: -moz-fit-content;
    min-width: fit-content;

    color: var(--content-base-primary);
    /* Body/M/Semi Bold */
    font-size: clamp(var(--caption-m-fs), 1vw ,var(--body-m-fs));
    font-weight: 600;
    line-height: 1.25;

    -webkit-transition: .3s ease;
    -o-transition: .3s ease;
    transition: .3s ease;
}

.pm-tab-item.active{
    background: var(--bg-sentiment-accent);
    color: var(--static-white);
}
@media(any-hover: hover){
    .pm-tab-item:not(.active):hover{
        background: var(--control-neutral-secondary-hover)
    }
}

@media (max-width: 1280px) {
    .pm-tab-item {
        font-size: var(--caption-m-fs);
        line-height: var(--caption-m-lh);
        height: var(--base-size-s);
    }
}