@import url('https://fonts.googleapis.com/css2?family=Golos+Text:wght@400..900&family=Onest:wght@300..900&family=Unbounded:wght@250..900&display=swap');

html {
  scroll-behavior: smooth; /* включает плавный скролл */
}

* {
    box-sizing: border-box;
}

[hidden] {
    display: none !important;
}

:root {
/* Переменные для шрифтов */
    --heading-font: "Unbounded", sans-serif;
    --subheading-font: "Onest", sans-serif;
    --lead-font: "Onest", sans-serif;
    --button-font: "Unbounded", sans-serif;
    --main-font: "Onest", sans-serif;
    --paragraph-font: "Onest", sans-serif;
    --pink--text-white-color-rgb: rgb(255, 254, 250);

/* FONT SIZE */
    --fz-64: 64px;
    --font-size-year: 64px;
    --font-size-metric: 56px;
    --font-size-item-number: 56px;
    --font-size-item-scale: 20px;
    --fz-58: 58px;
    --fz-56: 56px;
    --fz-48: 48px;
    --fz-40: 40px;
    --font-size-h1: 64px;
    --font-size-h2: 48px;
    --font-size-h3: 32px;
    --font-size-h4: 24px;
    --font-size-h5: 17px;
    --font-size-sh1: 48px;
    --font-size-sh2: 40px;
    --font-size-sh3: 32px;
    --font-size-sh4: 24px;
    --fz-32: 32px;
    --fz-30: 30px;
    --fz-28: 28px;
    --fz-24: 24px;
    --fz-22: 22px;
    --fz-20: 20px;
    --fz-18: 18px;
    --fz-17: 17px;
    --font-size-index: 16px;
    --font-size-lead: 24px;
    --font-size-paragraph: 17px;
    --font-size-subtext: 13px;
    --font-size-li-before: 24px;
    --fz-16: 16px;
    --fz-14: 14px;
    --fz-13: 13px;
    --font-size-btn: 13px;
    --font-size-tag: 10px;
    --fz-12: 12px;
    --fz-10: 10px;
    --fz-8: 8px;

/* FONT WEIGHT */
    --font-weight-li: 300;
    --font-weight-lead: 300;
    --font-weight-base: 300;
    --font-weight-number: 400;
    --font-weight-subheading: 400;
    --font-weight-sh1: 500;
    --font-weight-heading: 600;
    --font-weight-heading-accent: 700;
    --font-weight-menu: 500;
    --font-weight-index: 600;
    --font-weight-accent: 500;
    --font-weight-title: 700;

/* LINE HEIGHT */
    --line-height-quant: 85%;
    --line-height-index: 0.95;
    --line-height-item-number: 0.85;
    --line-height-btn: 98%;
    --line-height-tag: 100%;
    --line-height-lead: 136%;
    --line-height-paragraph: 132%;
    --line-height-subtext: 125%;
    --line-height-h1: 112%;
    --line-height-h2: 108%;
    --line-height-h3: 115%;
    --line-height-h4: 115%;
    --line-height-h5: 110%;
    --line-height-sh1: 0.9;
    --line-height-sh3: 100%;
    --line-height-sh4: 120%;

/* LETTER SPACING */
    --letter-spacing-year: -2px;
    --letter-spacing-quant: -1.5px;
    --letter-spacing-li: -0.25px;
    --letter-spacing-subtext: -0.15px;
    --letter-spacing-base: -0.05px;
    --letter-spacing-lead: -0.25px;
    --letter-spacing-heading-min: -0.5px;
    --letter-spacing-heading-max: -0.75px;
    --letter-spacing-subheading: -0.5px;
    --letter-spacing-sh1: -1.5px;


    --link-main-underline-gap-l: var(--space-6);
    --link-main-underline-gap-m: var(--space-4);
    --link-secondary-underline-gap-l: var(--space-2);
    --link-underline-width: 0.5px;

/* grey ——— base ——— bg */
    --grey-bg-white:#FFFFFC;
    --grey-bg-light:#F7F7F5;
    --grey-bg-main:#F5F3F0;
    --grey-bg-dark:#E0DDDA;
    --grey-bg-black:#242322;
    --grey-bg-super-dark:#2E2C28;

/* grey ——— base ——— text */
    --grey-text-main:#28251E;
    --grey-text-white:#FCFBF7;
    --grey-text-light:#696662;
    --grey-text-super-light:#D6D3CB;

/* pink ——— base ——— text */
    --pink-text-black:#241921;
    --pink-text-super-dark: #332F32;
    --pink-text-dark: #82416C;
    --pink-text-light: #A38398;
    --pink-text-super-light:#CCBCC7;
    --pink-text-white:#FAF7F9;

/* pink ——— base ——— bg */
    --pink-bg-white:#FFFCFF;
    --pink-bg-light:#F5F0F3;
    --pink-bg-main:#CC6AA3; 
    --pink-bg-dark:#82416C;
    --pink-bg-super-dark:#332E32;
    --pink-bg-black: #211D20;

/* pink ——— accent */
    --pink-accent-main: #FC65B6;
    --pink-accent-light: #FFF2F8;
    --pink-accent-dark: #E55CA1;

/* yellow */
    --yellow-text-white:#FFFEFA;
    --yellow-text-main:#292722;
    --yellow-text-light:#99948A;
    --yellow-text-accent:#FFBF00;
    --yellow-bg-black:#2E2C27;
    --yellow-bg-main:#FFD040;

/* violet */
    --violet-text-dark:#181929;
    --violet-bg-main:#8599FF;
    --violet-bg-light:#B2BFFF;
    --violet-bg-dark:#757EFF;
    --green-bg-dark: #00A3A3;

/* red */
    --red-text-white:#FFFBFA;
    --red-bg-main:#F23913;
    --red-bg-dark:#DE4A2C;
    --main:#FAFCFF;
    --hover:#ADCDFF;

/* blue and green */
    --blue-bg-dark: #47A3FF;
    --green-bg-dark: #0AA39C;

/* LOGO */
    --logo-width-l: 88px;
    --logo-width-m: 64px;
    --logo-width-s: 48px;
    --logo-width-xs: 24px;

    --logo-padding-btm-l: var(--space-8);

/* SPACING */
    --space-2: 2px;
    --space-4: 4px;
    --space-6: 6px;
    --space-8: 8px;
    --space-10: 8px;
    --space-12: 12px;
    --space-16: 16px;
    --space-20: 20px;
    --space-24: 24px;
    --space-32: 32px;
    --space-36: 36px;
    --space-40: 40px;
    --space-48: 48px;
    --space-56: 56px;
    --space-64: 64px;
    --space-72: 72px;
    --space-80: 80px;
    --space-88: 88px;
    --space-96: 96px;
    --space-112: 112px;
    --space-128: 128px;
    --space-144: 144px;
    --space-160: 160px;
    --space-176: 176px;
    --space-192: 192px;

/* BORDER TOKENS */
    --border-width-m: 1px;
    --border-width-s: 0.5px;
    
    --border-radius-table-item-l: 5px;
    --border-radius-table-item-m: 3px;

    --border-radius-marker: 2px;
    --border-radius-img-l: 48px;
    --border-radius-img-m: 36px;
    --border-radius-img-s: 24px;

/* BUTTON TOKENS */
    --btn-padding-y-l: var(--space-12);
    --btn-padding-y-m: var(--space-8);
    --btn-padding-y-s: var(--space-4);
    --btn-padding-y-xs: var(--space-2);

    --btn-padding-x-l: var(--space-48);
    --btn-padding-x-m: var(--space-32);
    --btn-padding-x-s: var(--space-16);
    --btn-padding-x-xs: var(--space-8);

    --btn-gap-l: var(--space-8);
    --btn-gap-m: var(--space-8);
    --btn-gap-s: var(--space-2);

/* BUTTON SIZE */
    --btn-width-max: 360px;
    --btn-width-medium: 320px;
    --btn-width-small: 280px;
    --btn-width-min: 280px;
    --btn-height-l: 48px;
    --btn-height-m: 40px;
    --btn-height-s: 32px;

/* ICON BUTTON TOKENS */
    --btn-icon-size-xl: 32px;
    --btn-icon-size-l: 24px;
    --btn-icon-size-m: 20px;
    --btn-icon-size-s: 16px;

/* TAG TOKENS */
    --tag-height-l: var(--space-36);
    --tag-height-m: var(--space-32);
    --tag-height-s: var(--space-24);

    --tag-padding-y-l: var(--space-12);
    --tag-padding-y-m: var(--space-8);
    --tag-padding-y-s: var(--space-4);

    --tag-padding-x-l: var(--space-20);
    --tag-padding-x-m: var(--space-16);
    --tag-padding-x-s: var(--space-12);

/* CONTROLS TOKENS */
    --arrow-width-l: 48px;
    --arrow-width-m: 40px;
    --arrow-width-s: 32px;
    --nav-icon-width: 40px;

    --tab-gallery-padding-l: 32px;
    --tab-gallery-padding-m: 24px;
    --tab-gallery-padding-s: 16px;

/* ITEM TOKENS */
    --item-number-width-l: 68px;
    --item-number-width-m: 58px;
    --item-number-width-s: 48px;

    --item-number-range-width-l: 168px;
    --item-number-range-width-m: 144px;
    --item-number-range-width-s: 112px;

    --item-gap-l: var(--space-16);
    --item-gap-m: var(--space-12);
    --item-gap-s: var(--space-8);

    --year-item-width-l: 138px;
    --year-item-width-m: 118px;
    --year-item-width-s: 101px;

/* COLOR / BG */
    --color-bg-tab: #FFFCFF;

    --scheme-grey-900: #262729;
    --scheme-blue-200: #CCE7FF;
    --scheme-blue-500: #1F4266;

    --scheme-orange-500: #CC5249;

/* FACT INFO */
    --fact-info-width-max: 320px;
    --fact-info-width-l: 240px;
    --fact-info-width-m: 220px;
    --fact-info-width-min: 180px;

/* HEADING TOKENS */
    --headline-width-max: 940px;
    --headline-width-xl: 720px;
    --headline-width-l: 640px;
    --headline-width-m: 560px;
    --headline-width-s: 480px;
    --headline-width-xs: 360px;
    --headline-width-min: 280px;

    --headline-gap-xl: var(--space-20);
    --headline-gap-l: var(--space-16);
    --headline-gap-m: var(--space-8);
    --headline-gap-s: var(--space-4);

    --headline-icn-l: 20px;
    --headline-icn-m: 16px;
    --headline-icn-s: 12px;

/* TEXT BLOCK TOKENS */
    --text-block-padding-xl: var(--space-16);
    --text-block-padding-l: var(--space-12);
    --text-block-padding-m: var(--space-8);
    --text-block-padding-s: var(--space-4);
    --text-block-padding-xs: var(--space-2);

    --text-block-gap-xl: var(--space-40);
    --text-block-gap-l: var(--space-32);
    --text-block-gap-m: var(--space-24);
    --text-block-gap-s: var(--space-16);

    --text-info-gap-xl: var(--space-24);
    --text-info-gap-l: var(--space-16);
    --text-info-gap-m: var(--space-8);
    --text-info-gap-s: var(--space-4);
    --text-info-gap-xs: var(--space-2);

    --text-info-padding-xl: var(--space-40);
    --text-info-padding-l: var(--space-32);
    --text-info-padding-m: var(--space-16);
    --text-info-padding-s: var(--space-8);
    --text-info-padding-xs: var(--space-2);

    --text-list-padding-l: var(--space-24);
    --text-list-padding-m: var(--space-16);
    --text-list-padding-s: var(--space-12);
    --text-list-padding-xs: var(--space-4);

    --text-list-gap-xl: var(--space-20);
    --text-list-gap-l: var(--space-16);
    --text-list-gap-m: var(--space-12);
    --text-list-gap-s: var(--space-8);
    --text-list-gap-xs: var(--space-4);

    --ordered-list-padding-xl: var(--space-40);
    --ordered-list-padding-l: var(--space-32);
    --ordered-list-padding-m: var(--space-24);
    --ordered-list-padding-xs: var(--space-6);

    --li-before-padding-top: 1.5px;

    --body-arrow-offset: 0.35em;
    --arrow-connector-l: 24px;

/* TABLE TOKENS */
    --table-gap-l: var(--space-24);

    --table-item-padding: var(--space-24);
    --table-item-padding-x: var(--space-2);

    --table-item-padding-y-l: var(--space-8);
    --table-item-padding-y-m: var(--space-6);
    --table-item-padding-y-s: var(--space-4);
    --table-item-padding-x-l: var(--space-16);
    --table-item-padding-x-m: var(--space-12);
    --table-item-padding-x-s: var(--space-8);

    --table-item-gap-l: var(--space-12);
    --table-item-gap-m: var(--space-8);
    --table-item-gap-s: var(--space-6);

/* TABLE LIST ITEM TOKENS */
    --table-list-item-padding-top-l: var(--space-8);
    --table-list-item-padding-top-m: var(--space-8);
    --table-list-item-padding-x-l: var(--space-20);
    --table-list-item-padding-x-m: var(--space-16);
    --table-list-item-padding-x-s: var(--space-8);
    --table-list-item-padding-btm-l: var(--space-10);
    --table-list-item-padding-btm-m: var(--space-8);

    --table-list-item-gap-l: var(--space-32);
    --table-list-item-gap-m: var(--space-24);
    --table-list-item-gap-s: var(--space-16);
    --table-list-item-gap-xs: var(--space-8);

    --table-list-item-text-gap-l: var(--space-4);
    --table-list-item-text-gap-m: var(--space-2);

    --table-list-item-marker-width-l: 4px;
    --table-list-item-marker-width-m: 2px;
    --table-list-item-marker-padding: 2px;

/* CARD TOKENS */
    --card-gap-xl: var(--space-48);
    --card-gap-l: var(--space-40);
    --card-gap-m: var(--space-32);
    --card-gap-s: var(--space-24);
    --card-gap-xs: var(--space-16);

/* GALLERY TOKENS */
    --gallery-padding-xl: var(--space-48);
    --gallery-padding-l: var(--space-32);
    --gallery-padding-m: var(--space-24);
    --gallery-padding-s: var(--space-16);
    --gallery-padding-xs: var(--space-8);
    --gallery-padding-min: var(--space-4);

    --gallery-gap-xl: var(--space-64);
    --gallery-gap-l: var(--space-48);
    --gallery-gap-m: var(--space-40);
    --gallery-gap-s: var(--space-32);
    --gallery-gap-xs: var(--space-16);
    --gallery-gap-xxs: var(--space-4);
    --gallery-gap-min: var(--space-2);

    --photo-gallery-gap: var(--space-4);
    --photo-gallery-padding-btm-l: var(--space-8);

    --preview-peek-l: var(--space-64);
    --preview-peek-m: var(--space-48);
    --preview-peek-s: var(--space-32);
    --preview-peek-xs: var(--space-20);

/* INNER TOKENS */
    --content-padding-y-xl: var(--space-64);
    --content-padding-y-l: var(--space-48);
    --content-padding-y-m: var(--space-32);

    --content-padding-top-xl: var(--space-80);
    --content-padding-top-l: var(--space-64);
    --content-padding-top-m: var(--space-48);
    --content-padding-top-s: var(--space-24);
    --content-padding-top-xs: var(--space-16);

    --content-padding-x-xl: var(--space-64);
    --content-padding-x-l: var(--space-40);
    --content-padding-x-m: var(--space-24);

    --content-gap-xl: var(--space-64);
    --content-gap-l: var(--space-48);
    --content-gap-m: var(--space-32);
    --content-gap-s: var(--space-24);
    --content-gap-xs: var(--space-16);

    --container-inner-gap-xl: var(--space-96);
    --container-inner-gap-l: var(--space-64);
    --container-inner-gap-m: var(--space-40);
    --container-inner-gap-s: var(--space-24);

/* IMAGE TOKENS */
    --photo-card-gap: var(--space-4);

    --photo-card-width-max: 560px;
    --photo-card-width-xl: 480px;
    --photo-card-width-l: 320px;
    --photo-card-width-m: 240px;
    --photo-card-width-s: 200px;
    --photo-card-width-min: 180px;

    --image-gap-l: var(--space-24);
    --image-padding-top-l: var(--space-4);

/* CTA TOKENS */
    --cta-gap-xl: var(--space-64);
    --cta-gap-l: var(--space-24);
    --cta-gap-m: var(--space-16);
    --cta-gap-s: var(--space-8);
    --cta-gap-xs: var(--space-6);

    --cta-padding-l: var(--space-8);
    --cta-padding-m: var(--space-4);
    --cta-padding-s: var(--space-2);

    --sh4-height-l: var(--space-64);
    --sh4-height-m: var(--space-48);
    --sh4-height-s: var(--space-40);

/* INFO BLOCK TOKENS */
    --info-block-gap-l: var(--space-40);
    --info-block-gap-m: var(--space-24);
    --info-block-gap-s: var(--space-16);

/* CONTAINERS */
    --container-width-max: 1600px;
    --container-width-med: 1280px;
    --container-width-min: 736px;

    --container-gap-xl: var(--space-96);
    --container-gap-l: var(--space-80);
    --container-gap-m: var(--space-64);
    --container-gap-s: var(--space-48);
    --container-gap-xs: var(--space-32);

    --container-padding-top-xl: var(--space-96);
    --container-padding-top-l: var(--space-80);
    --container-padding-top-m: var(--space-64);
    --container-padding-top-m: var(--space-64);
    --container-padding-x-xl: var(--space-64);
    --container-padding-x-l: var(--space-40);
    --container-padding-x-m: var(--space-24);
    --container-padding-x-s: var(--space-16);
    --container-padding-btm-xl: var(--space-128);
    --container-padding-btm-l: var(--space-96);

    --container-padding-xl: var(--space-80);
    --container-padding-l: var(--space-64);
    --container-padding-m: var(--space-40);
    --container-padding-s: var(--space-32);
    --container-padding-xs: var(--space-16);

    --gallery-width-max: 1400px;
    --content-width-max: 1600px;
    --content-width-l: 1400px;
    --content-width-med: 1200px;
    --panel-width-max: 960px;
    --content-width-s: 736px;

    --image-width-max: 800px;
    --image-width-med: 720px;
    --image-width-mob: 736px;

    --img-width-l: 640px;
    --img-width-m: 560px;
    --img-width-s: 480px;
    
    --img-column-width-l: 480px;
    --img-column-width-m: 360px;
    --img-column-width-s: 280px;

    --paper-width-v-l: 480px;

    --scheme-width-max: 480px;
    --scheme-width-medium: 360px;
    --scheme-width-med: 400px;
    --scheme-width-min: 280px;

    --scheme-legend-width-max: 480px;
    --scheme-legend-width-medium: 400px;
    --scheme-legend-width-min: 240px;

    --infograph-segment-gap: var(--space-2);
    --infograph-segment-height: 16px;

    --infograph-scale-item-gap-l: var(--space-16);
    --infograph-scale-item-gap-m: var(--space-12);
    --infograph-scale-item-gap-s: var(--space-8);

    --infograph-width-xl: 720px;
    --infograph-width-l: 480px;
    --infograph-width-m: 400px;
    --infograph-width-s: 320px;

    --infograph-padding-l: var(--space-64);
    --infograph-padding-m: var(--space-40);
    --infograph-padding-s: var(--space-24);

    --body-arrow-width-l: 40px;
    --body-arrow-width-m: 36px;
    --body-arrow-width-s: 24px;
    --body-arrow-offset: 0.5em;
    --body-arrow-offset-min: 0.1em;

    --text-block-width-xl: 640px;
    --text-block-width-l: 560px;
    --text-block-width-m: 440px;
    --text-block-width-s: 360px;

    --item-list-width-l: 512px;

    --text-info-width-max: 960px;
    --text-info-width-med: 800px;
    --text-info-width-min: 800px;
    --text-info-width-xl: 800px;
    --text-info-width-l: 720px;
    --text-info-width-m: 560px;
    --text-info-width-s: 480px;
    --text-info-width-xs: 320px;

    --cta-width-max: 720px;
    --cta-width-med: 680px;
    --cta-width-mob: 736px;

    --metrics-width-max: 720px;

    --table-item-width-l: 238px;
    --table-item-width-m: 208px;
    --table-item-width-s: 160px;

    --header-height-l: 64px;
    --header-height-m: 48px;
    --header-height-s: 40px;

    --park-list__item-height-l: 80px;
    --park-list__item-height-m: 68px;
    --park-list__item-height-s: 106px;

    --scheme-index-height-l: 24px;
    --scheme-index-height-m: 20px;
    --scheme-index-height-s: 16px;

    --park-list-sticky-offset-l: calc(
        var(--header-height-l) + 
        var(--btn-height-l) + 
        var(--tab-gallery-padding-l)
        );

    --park-list-sticky-offset-m: calc(
        var(--header-height-m) + 
        var(--btn-height-m) + 
        var(--tab-gallery-padding-m)
        );

    --park-list-sticky-offset-s: calc(
        var(--header-height-s) + 
        var(--btn-height-s) + 
        var(--tab-gallery-padding-s)
        );
}

img {
    width: 100%;
    height: auto;
    object-fit: cover;
}

.logo {
    display: block;
    aspect-ratio: 1/1;
    margin: 0;
    object-fit: contain;
    transition: 
        transform 0.25s ease,
        color 0.25s ease;
}

.divider {
    flex: 0 0 1px;
    width: 100%;
    height: 1px;
    background: var(--grey-text-super-light);
    margin: 0;
}

.display {
    font-family: var(--display-font);
    font-size: var(--fz-88);
    text-align: center;
    font-weight: 700;
    line-height: 100%; /* 88px */
    letter-spacing: -0.5px;
    color: var(--yellow-text-main, #292722);
}

h1, 
h2, 
h3, 
h4, 
h5,
h6 {
    font-family: var(--heading-font);
    color: var(--grey-text-main);
    text-align: left;
    margin: 0;
}

h1 {
    font-size: var(--font-size-h1);
    font-weight: var(--font-weight-heading);
    line-height: var(--line-height-h1);
    letter-spacing: var(--letter-spacing-heading-max);
}

h2 {
    font-size: var(--font-size-h2);
    font-weight: var(--font-weight-heading);
    line-height: var(--line-height-h2);
    letter-spacing: var(--letter-spacing-heading-min);
}

h3 {
    font-size: var(--font-size-h3);
    font-weight: var(--font-weight-accent);
    line-height: var(--line-height-h3);
    letter-spacing: var(--letter-spacing-heading-min);
}

h4 {
    font-size: var(--font-size-h4);
    font-weight: var(--font-weight-accent);
    line-height: var(--line-height-h4);
    letter-spacing: 0;
}

h5 {
    font-size: var(--font-size-h5);
    font-weight: var(--font-weight-accent);
    line-height: var(--line-height-h5);
    letter-spacing: var(--letter-spacing-base);
}

h6 {
    font-size: var(--fz-13);
    font-weight: 450;
    line-height: 112%; /* 24,2px */
    letter-spacing: 0px;
}

.subheading-1,
.subheading-2,
.subheading-3,
.subheading-4,
.subheading-5,
.subheading-6 {
    font-family: var(--main-font);
    font-weight: 400;
    line-height: 110%;
    letter-spacing: -1px;
    color: var(--grey-text-main);
    text-align: left;
    margin: 0;
}

.subheading-1 {
    font-size: var(--font-size-sh1);
    font-weight: var(--font-weight-sh1);
    line-height: var(--line-height-sh1);
    letter-spacing: var(--letter-spacing-subheading);
}

.subheading-2 {
    font-size: var(--font-size-sh2);
    line-height: 102%; /* 44px */
    letter-spacing: -0.5px;
}

.subheading-3 {
    font-size: var(--font-size-sh3);
    font-weight: var(--font-weight-subheading);
    line-height: var(--line-height-sh3);
    letter-spacing: var(--letter-spacing-subheading);
}

.subheading-4 {
    font-size: var(--font-size-sh4);
    font-weight: var(--font-weight-subheading);
    line-height: var(--line-height-sh4);
    letter-spacing: var(--letter-spacing-subheading);
}

.subheading-5 {
    font-size: var(--fz-24);
    font-weight: 400;
    line-height: 102%; /* 24,48px */
    letter-spacing: -0.5px;
}

.subheading-6 {
    font-size: var(--fz-18);
    font-weight: 400;
    line-height: 102%; /* 18.36px */
    letter-spacing: -0.25px;
}

.lead-1,
.lead-2,
.lead-3 {
    font-family: var(--main-font);
    font-weight: 400;
    line-height: 135%;
    letter-spacing: -0.72px;
    color: var(--grey-text-main);
    text-align: left;
    margin: 0;
}

.lead {
    font-family: var(--main-font);
    font-size: var(--font-size-lead);
    font-weight: var(--font-weight-lead);
    line-height: var(--line-height-lead);
    letter-spacing: var(--letter-spacing-lead);
    color: var(--grey-text-main);
    text-align: left;
}

.lead a {
    text-decoration: underline dashed;
    text-decoration-thickness: var(--link-inderline-width);
    text-underline-offset: var(--link-underline-gap-l);
    text-decoration-color: var(--grey-text-super-light);
}

.lead-1 {
    font-size: var(--fz-32);
    font-weight: 250;
    line-height: 140%; /* 44px */
    letter-spacing: -0.4px;
}

.lead-2 {
    font-size: var(--fz-24);
    font-weight: 300;
    letter-spacing: -0.56px;
}

.lead-3 {
    font-size: var(--fz-18);
    font-weight: 300;
    line-height: 132%; /* 23,76px */
    letter-spacing: -0.3px;
}

.lead-1 + .lead-1 {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    gap: 40px;
}

.paragraph {
    font-family: var(--main-font);
    color: var(--grey-text-main);
    font-size: var(--font-size-paragraph);
    font-weight: var(--font-weight-base);
    line-height: var(--line-height-paragraph);
    letter-spacing: var(--letter-spacing-base);
    text-align: left;
    margin: 0;
}

.paragraph--inverse {
    color: var(--grey-text-white);
}

.paragraph--bold {
    font-weight: var(--font-weight-heading);
    letter-spacing: -0.1px;
}

.subtext {
    font-family: var(--main-font);
    font-size: var(--font-size-subtext);
    font-weight: var(--font-weight-base);
    line-height: var(--line-height-subtext);
    letter-spacing: var(--letter-spacing-subtext);
    text-align: left;
    color: var(--grey-text-main);
    text-decoration: none;
}

.subtext--inverse {
    color: var(--grey-text-white);
}

a {
    text-decoration: none;
    color: var(--grey-text-main);
}

.link-main {
    color: var(--grey-text-main);
    text-decoration-line: underline;
    text-decoration-thickness: var(--link-underline-width);
    text-underline-offset: var(--link-main-underline-gap-l);
    text-decoration-color: var(--grey-text-super-light);
}

.link-main--dashed {
    text-decoration: underline dashed;
    text-decoration-color: var(--grey-text-super-light);
}

.link-main:hover,
.link-main:focus-visible {
    color: var(--grey-text-main);
    text-decoration-color: var(--grey-text-main);
}

.link-secondary {
    color: var(--grey-text-light);
    text-decoration-line: underline;
    text-decoration-thickness: var(--link-underline-width);
    text-underline-offset: var(--link-secondary-underline-gap-l);
    text-decoration-color: var(--grey-text-super-light);
    transition: color 0.3s ease;
}

.link-main--inverse,
.link-secondary--inverse {
    color: var(--pink-text-white);
    text-decoration-color: var(--grey-text-light);
}

.link-secondary:hover,
.link-secondary:focus-visible {
    color: var(--grey-text-main);
    text-decoration-color: var(--grey-text-main);
}

.link-main--inverse:hover,
.link-secondary--inverse:hover {
    color: var(--grey-text-white);
    text-decoration-color: var(--grey-text-super-light);
}

.quote {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    padding: 0 var(--text-info-padding-l) var(--text-block-padding-m);
}

.quote-mark {
    display: inline-flex;
    align-items: start;
    justify-content: center;
    width: var(--btn-icon-size-xl);
    height: auto;
    margin-top: var(--image-padding-top-l);
}

.focus-text {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    width: 100%;
    
}

.focus-text--row {
    flex-direction: row;
    justify-content: stretch;
    gap: 5px;
}

.big-text {
    font-family: var(--heading-font);
    font-size: 80px;
    font-weight: 500;
    line-height: 122%; /* 97.6px */
    letter-spacing: -1.6px;
    text-transform: uppercase;
    text-align: center;
    color: var(--grey-text-main);
    margin: 0;
}

/* ХИРО БЛОК ——— */
.hero {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: calc(100vh - 64px);
    max-height: 1200px;
    min-width: 0;
    width: 100%;
    background-image: url(../img/bg/MP-hero_bg_v1.1.jpg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    margin-top: var(--header-height-l);
}

.hero .inner {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    min-width: 0;
    max-width: 860px;
    width: 100%;
    height: 100%;
    padding-left: 40px;
    margin: 0;
}

.hero .key-info {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: flex-start;
    width: 100%;
    gap: 20px;
    padding: 0;
    margin: 0;
}

.hero img.logo {
    display: block;
    width: 128px;
    min-width: 128px;
    height: auto;
    aspect-ratio: 1/1;
    object-fit: contain;
    margin: 0 5px 15px 0;
}

.hero .divider-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    height: 144px;
    padding: 7px 0 0 0;
}

.hero .divider {
    flex: none;
    height: 100%;
    border-right: 0.5px solid var(--pink-text-white);
    margin: 0;
}

.hero .text-info {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    max-width: fit-content;
    padding-top: 8px;
    margin: 0;
}

.hero h1 {
    font-size: var(--fz-40);
    font-weight: 400;
    line-height: 104%; /* 41.6px */
    letter-spacing: -1px;
    text-align: left;
    color: var(--pink-text-white);
    text-transform: uppercase;
    margin: 0;
}

.hero p {
    line-height: 140%; /* 23.8px */
    color: var(--pink-text-white);
    padding-left: 2px;
}

.hero .subtext {
    position: absolute;
    padding-bottom: 1px;
    bottom: 24px;
    left: 50%;
    width: 100%;
    font-size: var(--fz-13);
    text-align: center;
    color: var(--pink-text-white);
    transform: 
        translateX(-50%)
        translateY(5%);
    margin: 0;
}

/* ИНТРО БЛОК ——— */
.intro {
    display: flex;
    flex-direction: column;
    justify-content: center; /* Центр по горизонтали */
    align-items: center;
    min-width: 0;
    max-width: 100vw;
    width: 100%;
    background-image: url("../img/bg/pattern/struckaxiom-pink-dark-bg.jpg");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    margin: 0;
    padding: 104px 64px;
}

.intro h1 {
    text-align: left;
    color: var(--grey-text-white);
    max-width: 1120px;
    width: 100%;
    margin: 0;
}

.intro p {
    color: var(--pink-text-white);
}

.intro .inner {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: center;
    max-width: 1600px;
    width: 100%;
    gap: 64px;
    margin: 0 auto;
}

.intro .text-block {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    max-width: 1120px;
    gap: 48px;
    padding-bottom: 24px;
}

.intro img.arrow-inside {
    display: block;
    width: 56px;
    aspect-ratio: 1/1;
    object-fit: contain;
    padding: 0;
    margin: 0;
}

/* ALL PROJECTS */
.projects {
    width: 100%;
    background: var(--grey-bg-main);
    padding-bottom: 128px;
}

.projects .inner {
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: var(--container-width-max);
    gap: var(--container-inner-gap-l);
    padding: 104px 64px 0;
    margin-inline: auto;
}

.projects__layout {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.projects-panel {
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    width: 100%;
    gap: var(--container-gap-l);
    padding-top: var(--content-padding-top-l);
}

/* ALL PROJECTS —— FILTER */
.projects-filter-status {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    width: max-content;
    gap: var(--text-info-gap-l);
    padding-top: var(--text-info-padding-l);
}

.projects-filter-status .subtext {
    color: var(--grey-text-light);
}

.projects-filter-status span {
    color: var(--pink-accent-dark);
}

.projects-filter-status[hidden] {
    display: none;
}

/* ALL PROJECTS —— PROJECT_CARD */
.project-card {
    display: grid;
    grid-template-columns:
        minmax(0, var(--image-width-max))
        minmax(0, var(--cta-width-max));
    align-items: flex-start;
    gap: var(--card-gap-xl);
    width: 100%;
}

.project-card__media {
    display: block;
    width: 100%;
    min-width: 0;
}

.project-card__media img {
    aspect-ratio: 4 / 3;
}

.project-card__key-info {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between;
    width: 100%;
    min-width: 0;
    height: 100%;
    padding-bottom: var(--space-4);
}

.project-card__cta {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: var(--card-gap-l);
    min-width: 0;
    width: 100%;
}

.project-card__text-info {
    display: flex;
    flex-direction: column;
    gap: var(--text-info-gap-xl);
    width: 100%;
    min-width: 0;
}

.project-card .subheading-2 a {
    text-decoration: none;
    font-weight: var(--font-weight-accent);
}

.project-card .subheading-2 a:hover {
    color: var(--pink-text-dark);
}

.project-card__text-info .paragraph {
    padding-left: var(--space-2);
}

.project-card__facts {
    display: grid;
    grid-template-columns: repeat(2, minmax(240px, 0fr));
    width: 100%;
    border-top: var(--border-width-m) solid var(--grey-text-super-light);
    padding-left: var(--space-2);
    margin: 0;
}

.project-card__fact {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: var(--space-8);
    padding-top: var(--text-block-padding-xl);

}

.project-card__fact--last {
    min-width: var(--fact-info-width-l);
}

.project-card__fact dt {
    font-family: var(--main-font);
    font-size: var(--font-size-subtext);
    line-height: 132%;
    color: var(--grey-text-light);
}

.project-card__fact dd {
    margin: 0;
    font-family: var(--main-font);
    font-size: var(--font-size-paragraph);
    line-height: 120%;
    color: var(--grey-text-main);
}

.project-card__link {
    width: auto;
    min-width: 240px;
    max-width: none;
    text-decoration: none;
}

/* NEWS */
.news {
    display: flex;
    justify-content: center;
    width: 100%;
    padding: 104px 64px;
    background: var(--grey-bg-light);
}

.news .inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    max-width: 1600px;
    gap: 48px;
}

.news h1 {
    text-align: center;
    padding-bottom: 8px;
}

.news-slider {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    gap: 48px;
}

.news-slider::before,
.news-slider::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    width: 48px;
    height: 100%;
    pointer-events: none;
    z-index: 2;
}

.news-slider::before {
    left: 0;
    background: linear-gradient(to right, var(--grey-bg-light), rgba(245, 245, 245, 0));
}

.news-slider::after {
    right: 0;
    background: linear-gradient(to left, var(--grey-bg-light), rgba(245, 245, 245, 0));
}

.news-track {
    display: flex;
    align-items: stretch;
    width: 100%;
    gap: 0;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    scrollbar-width: none;
    -ms-overflow-style: none;
}

.news-track::-webkit-scrollbar {
    display: none;
}

.news-item {
    display: flex;
    flex-direction: column;
    flex: 0 0 clamp(480px, 40vw, 640px);
    width: 100%;
    min-width: 480px;
    max-width: 640px;
    height: 100%;
    align-self: flex-start;
    scroll-snap-align: start;
}

.news-card,
.news-detail {
    height: 100%;
    width: 100%;
    min-width: 0;
    background: var(--grey-bg-white);
    border: 1px solid var(--grey-text-super-light);
}

.news-card {
    display: flex;
    padding: 32px;
}

.news-detail {
    display: none;
}

.news-card__inner,
.news-detail__inner {
    display: flex;
    flex-direction: column;
    width: 100%;
    min-width: 0;
}

.news-card__inner {
    gap: 28px;
}

.news-detail__inner {
    gap: 24px;
}

.news-card__cover {
    display: block;
    width: 100%;
    height: 360px;
    object-fit: cover;
    border-radius: 0 24px;
    flex: 0 0 auto;
}

.news-card .news-card__cta {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between;
    width: 100%;
    min-width: 0;
    flex: 1 1 auto;
    gap: 28px;
}

.news-item .cta__text-info {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    min-width: 0;
    gap: 12px;
}

.news-item .cta__text-info .title {
    display: flex;
    flex-direction: column;
    width: 100%;
    gap: 4px;
}

.news-item .cta__text-info .subtext {
    color: var(--grey-text-light);
}

.news-card .title h4,
.news-card .paragraph {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.news-card .title h4 {
    -webkit-line-clamp: 3;
}

.news-card .paragraph {
    -webkit-line-clamp: 4;
}

.news-item .paragraph,
.news-item .body {
    width: 100%;
    margin: 0;
}

.news__photo-grid {
    display: grid;
    align-items: start;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    width: 100%;
}

/* NEWS —— NEWS-NAV */
.news-nav {
    display: flex;
    justify-content: center;
    width: 100%;
}

.news-nav__btn {
    max-width: 320px;
}

.news-nav .btn:disabled {
    cursor: default;
    pointer-events: none;
}

/* NEWS MODAL*/
.news-modal {
    position: fixed;
    inset: 0;
    width: min(800px, calc(100vw - 48px));
    max-width: 800px;
    height: fit-content;
    max-height: calc(100vh - 64px);
    overflow: visible;
    border: none;
    background: var(--grey-bg-white);
    box-shadow: 0 24px 80px rgba(0, 0, 0, 0.18);
    padding: 0;
    margin-inline: auto;
}

.news-modal[open] {
    display: block;
}

.news-modal::backdrop {
    background: var(--grey-bg-super-dark);
    opacity: 0.85;
    backdrop-filter: blur(6px);
}

.news-modal__body {
    display: block;
    max-height: calc(100vh - 48px);
    overflow-y: auto;
    overflow-x: hidden;
    padding: 48px;
}

.news-modal__content {
    display: flex;
    flex-direction: column;
    width: 100%;
    min-width: 0;
    gap: 24px;
    padding: 0;
}

.news-modal__content > .news-card__cover,
.news-modal__content > img {
    display: block;
    width: 100%;
    height: auto;
    max-height: 720px;
    object-fit: cover;
    border-radius: 0 24px;
}

.news-modal__content .news__title {
    display: flex;
    flex-direction: column;
    width: 100%;
    gap: 4px;
}

.news-modal__content .news__text-block {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    gap: var(--text-block-gap-l);
}

.news-modal__content .news__text-info,
.news-modal__content .news__text-info--list,
.news-modal__content .button-gallery,
.news-modal__content .news__photo-grid {
    width: 100%;
    min-width: 0;
}

.news-modal__content .news__text-info,
.news-modal__content .news__text-info--list {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
}

.news-modal__content .news__text-info--list {
    counter-reset: ordered-list;
}

.news-modal__content .news__text-info--quote {
    padding: 0 var(--text-block-padding-l);
    gap: var(--text-info-gap-m);
}

.news-modal__content .news__text-info--quote .paragraph {
    color: var(--pink-text-dark);
}

.news-modal__content .news__text-info .news__links,
.news-modal__content .news__links {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    width: 100%;
    flex-wrap: nowrap;
    gap: 12px;
}

.news-modal__content .news__links--single {
    margin-bottom: var(--space-8);
}

.news-modal__content .subtext {
    color: var(--grey-text-light);
}

.news-modal__content .button-gallery {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    width: 100%;
    gap: 16px;
    margin: 0;
}

.news-modal__content .photo-card-source {
    margin-left: 0;
}

.news-overlay__close,
.news-overlay--prev,
.news-overlay--next {
    z-index: 10;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: var(--btn-height-l);
    height: var(--btn-height-l);
    border: 1px solid transparent;
    background: none;
    cursor: pointer;
    transition: opacity 180ms ease;
}

.news-overlay__close {
    position: absolute;
    top: -14px;
    right: -56px;
    left: auto;
}

.news-overlay--prev,
.news-overlay--next {
    position: fixed;
    top: 50vh;
    transform: translateY(-50%);
}

.news-overlay--prev {
    left: max(16px, calc(50vw - 460px));
}

.news-overlay--next {
    right: max(16px, calc(50vw - 460px));
}

.news-overlay__close:hover,
.news-overlay--prev:hover,
.news-overlay--next:hover {
    border: 1px solid var(--grey-text-light);
}

.news-overlay--prev:disabled,
.news-overlay--next:disabled {
    opacity: 0;
    pointer-events: none;
}

body.news-modal-open {
    overflow: hidden;
}

/* О НАС */
.about-us {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    min-width: 0;
    max-width: 100vw;
    width: 100%;
    gap: 144px;
    padding: 88px 0 176px 0;
    background: var(--grey-bg-light);
    margin: 0;
}

.about-us .work-direction,
.about-us .our-target,
.about-us .our-principles {
    scroll-margin-top: 56px;
}

/* О НАС > НАПРАВЛЕНИЯ ДЕЯТЕЛЬНОСТИ ——— */
.about-us .work-direction {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-width: 0;
    max-width: 100vw;
    width: 100%;
    padding: 0 64px;
    margin: 0;
    scroll-margin-top: 144px;
}

.about-us .work-direction .inner {
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: stretch;
    width: 100%;
    max-width: 1600px;
    height: 100%;
    gap: 144px;
    margin: 0;
}

.about-us .work-direction .main-info {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    justify-content: space-between;
    max-width: 1600px;
    width: 100%;
    border-top: 0.5px solid var(--grey-text-light);
    margin: 0;
}

.about-us .work-direction h2 {
    font-weight: 500;
    flex: 1 0 560px;
    max-width: 560px;
    color: var(--grey-text-main);
    padding-top: 18px;
}

.about-us .work-direction .main-info .list {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    max-width: 832px;
    width: 100%;
    margin: 0;
}

.about-us .work-direction .main-info .list .subheading-5 {
    width: fit-content;
    line-height: 108%;
    transition: transform 0.75s ease;
}

.about-us .work-direction-item-first,
.about-us .work-direction-item {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    height: auto;
    width: 100%;
    border-top: 0.5px solid var(--grey-text-light);
    padding: 0 12px 0 16px;
    margin: 0;
    transition: 
        transform 0.25s ease,
        color 0.25s ease;
}

.about-us .work-direction-item--first {
    border: none;
}

.about-us .work-direction-item-first .content-wrapper,
.about-us .work-direction-item .content-wrapper {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 40px;
    padding: 24px 0;
    width: 100%;
    margin: 0;
}

.about-us .work-direction-icon img {
    display: block;
    width: 40px;
    height: 40px;
    object-fit: contain;
    margin-right: 4px;
    transition: transform 0.25s ease;
}

.about-us .work-direction-item-first .wd-key-info,
.about-us .work-direction-item .wd-key-info {
    display: none;  /* скрыто по умолчанию */
    flex-direction: column;
    align-items: flex-start;
    justify-content: stretch;
    width: 100%;
    gap: 20px;
    padding: 8px 16px 32px 16px;
    margin: 0;
}

.about-us .work-direction-item-first .wd-key-info {
    flex-direction: row;
}

.about-us .work-direction-item-first .wd-key-info .secondary-info,
.about-us .work-direction-item .wd-key-info .secondary-info {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    width: 100%;
    max-width: 100vw;
    gap: 16px;
    padding-top: 6px;
    margin: 0;
}

.about-us .work-direction-item-first .wd-key-info .secondary-info {
    flex: 1 0 0;
    min-width: 200px;
    max-width: 240px;
}

.about-us .work-direction-item-first .wd-key-info .secondary-info img,
.about-us .work-direction-item .wd-key-info .secondary-info img {
    display: block;
    height: auto;
    object-fit: contain;
    aspect-ratio: 3/2;
    margin: 0;
}

.about-us .work-direction-item-first .wd-key-info .secondary-info img {
    aspect-ratio: 3/4;
}

.about-us .work-direction-item-first .wd-key-info .secondary-info .text-info,
.about-us .work-direction-item .wd-key-info .secondary-info .text-info {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    width: 100%;
    max-width: 80%;
    border-left: 1.5px solid var(--grey-text-main);
    gap: 2px;
    padding: 0 0 2px 10px;
    margin: 0;
}

.about-us .work-direction-item-first .wd-key-info .secondary-info .text-info {
   max-width: 100%; 
}

.about-us .work-direction-item-first .wd-key-info .secondary-info h6,
.about-us .work-direction-item .wd-key-info .secondary-info h6 {
    line-height: 130%;
}

.about-us .work-direction-item-first .wd-key-info .secondary-info p,
.about-us .work-direction-item .wd-key-info .secondary-info p {
    font-size: var(--fz-13);
    font-weight: 400;
    line-height: 120%;
    letter-spacing: -0.25px;
    color: var(--grey-text-light);
}

.about-us .work-direction-item-first .wd-key-info .text-block,
.about-us .work-direction-item .wd-key-info .text-block {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    flex: 1 0 0;
    min-width: 360px;
    max-width: 512px;
    gap: 12px;
    padding: 4px 0 0 10px;
    margin-right: 40px;
}

.about-us .work-direction-item .wd-key-info .text-block {
    max-width: 92%;
}

.about-us .work-direction-item-first .wd-key-info p,
.about-us .work-direction-item .wd-key-info p {
    font-family: var(--main-font);
    font-size: var(--fz-17);
    font-weight: 350;
    line-height: 132%;
    letter-spacing: -0.15px;
    color: var(--grey-text-black);
}

/* pressed состояние */
.about-us .work-direction-item-first.pressed .work-direction-icon img,
.about-us .work-direction-item.pressed .work-direction-icon img {
    transform: rotate(180deg);
}

/* показываем только у нажатого пункта */
.about-us .work-direction-item-first.pressed .wd-key-info,
.about-us .work-direction-item.pressed .wd-key-info {
    display: flex;
}

.about-us .work-direction-item-first:hover .subheading-5,
.about-us .work-direction-item:hover .subheading-5,
.about-us .work-direction-item-first.pressed .subheading-5,
.about-us .work-direction-item.pressed .subheading-5 {
    font-weight: 500;
}

/* О НАС > НАША ЦЕЛЬ ——— */
.about-us .our-target {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    max-width: 100vw;
    width: 100%;
    background-image: url("../img/bg/pattern/struckaxiom-dark-bg.png");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    margin: 0;
}

.about-us .our-target .inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 64px;
    padding: 104px 64px;
    max-width: 1600px;
    width: 100%;
    margin: 0;
}

.about-us .our-target .title {
    display: flex;
    flex-direction: column;
    align-items: center;
    max-width: 900px;
    width: 100%;
    gap: 56px;
    margin: 0;
}

.about-us .our-target .text-block {
    display: flex;
    flex-direction: column;
    align-items: center;
    max-width: 1120px;
    width: 100%;
    gap: 40px;
    margin: 0;
}

.about-us .our-target h2 { 
    text-align: center;
    color: var(--grey-text-white);
    padding: 0;
    margin: 0;
}

.about-us .our-target h3 { 
    text-align: center;
    color: var(--pink-accent-dark);
}

.about-us .our-target p { 
    text-align: center;
    color: var(--grey-text-white);
}

.about-us .our-target img.arrow-inside {
    display: block;
    width: 56px;
    aspect-ratio: 1/1;
    object-fit: contain;
    padding: 0;
    margin: 0;
}

/* ——— О НАС > НАШИ ПРИНЦИПЫ ——— */
.about-us .our-principles {
    display: flex;
    flex-direction: column;
    align-items: center;
    max-width: 100vw;
    width: 100%;
    padding: 0 64px;
    gap: 80px;
    margin: 0;
}

.about-us .our-principles .inner {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-start;
    max-width: 1600px;
    width: 100%;
    padding: 0;
    margin: 0;
}

.about-us .our-principles .element {
    display: flex;
    width: 100%;
    flex: 0 0 200px;
    outline: 0.5px solid var(--grey-text-super-light);
}

.about-us .our-principles .info-card {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    flex: 1 1 640px;
    min-width: 640px;
    max-width: 1200px;
    height: 200px;
    gap: 40px;
    padding: 16px 40px 32px 32px;
    background: var(--grey-bg-light);
    outline: 0.5px solid var(--grey-text-super-light);
    margin: 0;
}

.about-us .our-principles .number {
    display: block;
    width: 82px;
    min-width: 82px;
    max-width: 82px;
    max-height: 150px;
    margin: 0;
}

.about-us .our-principles .text-info {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    width: 100%;
    max-width: 800px;
    gap: 8px;
    padding-top: 9px;
}

.about-us .our-principles .number p {
    font-family: var(--main-font);
    font-size: 140px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: -2px;
    text-align: center;
    color: var(--grey-text-super-light);
    padding: 0;
    margin: 0;
}

.about-us .our-principles h2 {
    text-align: center;
    font-weight: 500;
}

.about-us .our-principles p {
    padding-left: 1px;
}

/* КОМАНДА ——— */
.team {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    min-width: 0;
    max-width: 100vw;
    width: 100%;
    padding: 128px 64px 160px 64px;
    border-top: 0.5px solid var(--grey-text-super-light);
    background: var(--grey-bg-light);
    margin: 0;
}

.team .inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    max-width: 1600px;
    width: 100%;
    gap: 136px;
    margin: 0;
}

.team .inner .key-info {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 100%;
    row-gap: 88px;
    margin: 0;
}

.team .inner .title {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between;
    flex: 1 0 0;
    min-width: 480px;
    max-width: 1200px;
    width: 100%;
    padding-right: 32px;
    margin: 0;
}

.team .inner .title h1 {
    color: var(--grey-text-main);
    padding-bottom: 8px;
}

.team .inner .title img {
    display: block;
    width: 100px;
    height: auto;
}

.team .inner .text-info {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between;
    flex: 1 0 0;
    min-width: 576px;
    max-width: 1280px;
    width: 100%;
    gap: 280px;
    padding-top: 8px;
    margin: 0;
}

.team .paragraph {
    padding-right: 24px;
}

.team .inner .secondary-info {
    --team-image-radius: 176px;
    --team-image-transition: 0.6s ease-in-out;
    --team-tint-transition: 0.5s ease-in-out;
    --team-tint-opacity: 0.35;
    position: relative;
    width: 100%;
    margin: 0;
}

.team .inner .secondary-info .main-img {
    position: relative;
    z-index: 0;
    display: block;
    width: 100%;
    max-width: var(--content-width-max);
    height: auto;
    object-fit: cover;
    clip-path: inset(
        0
        0
        0
        0
        round
        0
        var(--team-image-radius)
        0
        var(--team-image-radius)
    );

    transition: clip-path var(--team-image-transition);
}

.team .inner .secondary-info::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    max-width: var(--content-width-max);
    background-color: var(--pink-accent-dark);
    mix-blend-mode: multiply;
    opacity: 0;
    pointer-events: none;
    clip-path: inset(
        0
        0
        0
        0
        round
        0
        var(--team-image-radius)
        0
        var(--team-image-radius)
    );

    transition:
        clip-path var(--team-image-transition),
        opacity var(--team-tint-transition);
}

.team .inner .secondary-info .ident {
    position: absolute;
    right: 0px;
    bottom: 67%;
    z-index: 2;
    display: block;
    max-width: 144px;
    height: auto;
    opacity: 0;
    pointer-events: none;
    transform: rotate(-5deg);
    transition: 
        opacity var(--team-image-transition);
}

/* МЕСТО РАБОТЫ ——— */
.work-place {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    min-width: 0;
    max-width: 100vw;
    width: 100%;
    background: var(--grey-bg-black);
    padding: 80px 64px 160px 64px;
    margin: 0;
}

.work-place .inner {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    max-width: 1600px;
    gap: 160px;
    margin: 0;
}

.work-place p {
    color: var(--grey-text-super-light);
}

.work-place .main-info {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: stretch;
    width: 100%;
    gap: 64px;
    margin-bottom: 16px;
}

.work-place .key-info .subheading-2 {
    color: var(--grey-text-super-light);
}

.work-place .main-info .text-info {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
    width: 100%;
    gap: 64px;
    margin-right: 80px;
}

.work-place .main-info .lead-3 {
    color: var(--grey-text-super-light);
    line-height: 150%;
}

.work-place .secondary-info {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    flex-wrap: nowrap;
    justify-content: stretch;
    width: 100%;
    gap: 64px;
    margin: 0;
}

.work-place .secondary-info img {
    display: flex;
    flex: 1 0 720px;
    min-width: 720px;
    max-width: 960px;
    width: 100%;
    height: 544px;
    aspect-ratio: 1/1;
    object-fit: cover;
}

.work-place .secondary-info .card-list {
    display: flex;
    flex-direction: column;
    justify-content: stretch;
    align-items: flex-start;
    border-bottom: 1px solid var(--grey-text-light);
    flex: 1 0 320px;
    min-width: 320px;
    max-width: 512px;
    width: 100%;
    margin: 0;
}

.work-place .secondary-info .info-card,
.work-place .secondary-info .info-card-top {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    height: 182px;
    border-top: 1px solid var(--grey-text-light);
    padding: 12px 20px 96px 0;
    gap: 8px;
    margin: 0;
}

/*  РАБОТА У НАС ——— */
.work-place .job-opportunities {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    border-top: 0.5px solid var(--grey-text-super-light);
    width: 100%;
    max-height: 1096px;
    padding-top: 32px;
    gap: 88px;
    margin: 0;
}

.work-place .job-opportunities h1 {
    color: var(--grey-text-white);
}

.work-place .job-opportunities .key-info {
    display: flex;
    flex-direction: row;
    justify-content: stretch;
    align-items: flex-start;
    flex-wrap: wrap;
    min-width: 0;
    max-width: 1600px;
    width: 100%;
    gap: 64px;
    margin: 0;
}

.work-place .job-opportunities .element-gallery {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-wrap: wrap;
    flex: 0 1 768px;
    width: 100%;
    gap: 0px;
}

.work-place .job-opportunities .element {
    display: flex;
    align-items: center;
    flex: 1 0 192px;
    max-width: 192px;
    height: auto;
    aspect-ratio: 1/1;
    outline: 0.5px solid var(--grey-text-light); /* тонкая линия поверх, не даёт двойных границ */
    outline-offset: -0.5px; /* чтобы выглядело как border по центру */
    margin: 0;
}

.work-place .job-opportunities .element img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.work-place .job-opportunities .CTA {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    flex: 1 1 600px;
    min-width: 600px;
    max-width: 800px;
    width: 100%;
    gap: 40px;
    padding: 32px 32px 32px 0;
    margin: 0;
}

.work-place .job-opportunities .main-text {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    max-width: 760px;
    width: 100%;
    gap: 20px;
    margin-bottom: 4px;
}

.work-place .job-opportunities h4 {
    color: var(--grey-text-super-light);
    line-height: 115%; /* 27.6px */
}

.work-place .job-opportunities p {
    font-size: var(--fz-18);
    color: var(--grey-text-super-light);
    text-align: left;
    font-weight: 300;
    line-height: 140%; /* 23.8px */
    letter-spacing: -0.1px;
    padding: 0;
    margin: 0;
}

.work-place .job-opportunities .button {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    height: 48px;
    padding: 12px 40px;
    background: var(--pink-accent-dark);
    font-family: var(--heading-font);
    font-size: var(--fz-12);
    font-weight: 300;
    line-height: 105%; /* 12.6px */
    text-transform: uppercase;
    text-decoration: none;
    color: var(--pink-text-white);
}

/* ЗАКУПКИ, ПРОТИВОДЕЙСТВИЕ КОРРУПЦИИ ——— */
.hangers {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    min-width: 0;
    max-width: 100vw;
    width: 100%;
    padding: var(--header-height-l) 64px 144px 64px;
    margin-top: var(--header-height-l);
    border-top: 0.5px solid var(--grey-text-super-light);
    background: var(--grey-bg-light);
}

.hangers .inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 1600px;
    gap: 156px;
    margin: 0;
}

.hangers .intro-info {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    justify-content: space-between;
    width: 100%;
    max-width: 1600px;
    margin: 0;
}

.hangers h1 {
    color: var(--grey-text-main);
    padding-bottom: 8px;
}

.hangers .intro-info .paragraph {
    font-size: var(--fz-20);
    padding-right: 20px;
}

.hangers .intro-info .key-info {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between;
    flex: 1 0 0;
    min-width: 480px;
    max-width: 1280px;
    width: 100%;
    padding-right: 32px;
    margin: 0;
}

.hangers .intro-info .key-info img {
    display: block;
    width: 100px;
    height: auto;
}

.hangers .intro-info .text-info {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between;
    flex: 1 0 0;
    min-width: 576px;
    max-width: 1280px;
    padding-top: 8px;
    gap: 254px;
    margin: 0;
}

.hangers .main-info {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    gap: 128px;
    margin: 0;
}

.hangers .main-info .plight {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    max-width: 720px;
    gap: 48px;
    margin-bottom: 32px;
}

.hangers .main-info h3 {
    text-align: center;
}

.hangers .main-info .plight .links-gallery {
    display: flex;
    flex-direction: row;
    gap: 24px;
    margin-bottom: 12px;
}

.hangers .main-info .plight .link a {
    text-decoration-color: var(--grey-text-super-light);
}

.hangers .main-info .plight .link a:hover,
.hangers .hangers-card .btn-link a:hover {
    font-weight: 400;
}

.hangers .main-info .plight .CTA {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    gap: 16px;
    margin: 0;
}

.hangers .main-info .plight .subtext {
    color: var(--grey-text-light);
    font-weight: 350;
}

.hangers .main-info .CTA .button,
.hangers .key-info .hangers-card .button {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    font-family: var(--heading-font);
    font-size: var(--fz-13);
    font-weight: 300;
    line-height: 105%; /* 12.6px */
    text-transform: uppercase;
    text-decoration: none;
    color: var(--pink-text-white);
    background: var(--pink-accent-dark);
    height: 56px;
    padding: 12px 40px;
    gap: 12px;
    min-width: 360px;
    max-width: 400px;
    margin: 0 auto;
}

.hangers .main-info .key-info .hangers-card .button img {
    width: 16px;
}

.hangers .main-info .key-info {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 1024px;
    gap: 64px;
    margin: 0;
}

.hangers .main-info .key-info .tab-header {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    gap: 56px;
    margin: 0;
}

.hangers .main-info .key-info .tabs-control {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width: 100%;
    background: var(--grey-bg-main);
    padding: 1px;
    margin: 0;
}

.hangers .main-info .key-info .tab-button {
    position: relative;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    text-align: center;
    border: 1px solid transparent;
    border-color: var(--grey-text-super-light);
    background: transparent;
    height: 56px;
    width: 100%;
    max-width: 500px;
    padding: 12px 40px;
    font-family: var(--button-font);
    font-size: var(--fz-13);
    color: var(--grey-text-light);
    font-weight: 350;
    line-height: 105%; /* 12.6px */
    text-transform: uppercase;
    text-decoration: none;
    cursor: pointer;
    margin: 0;
    transition:
        all 0.25s ease-in-out;
}

.hangers .main-info .key-info .tab-button.is-active {
    background: var(--pink-bg-white);
    border-color: var(--pink-accent-dark);
    color: var(--pink-accent-dark);
    box-shadow: 
        0 12px 20px -6px rgba(131,127,135,0.25),
        0 0 0 0.5px var(--pink-accent-dark);
    z-index: 2;
}

.hangers .tabs-panels {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    min-height: fit-content;
    margin: 0;
}

.hangers .tab-panel {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    gap: 24px;
    margin: 0;
}

.hangers .tab-panel[hidden] {
    display: none;
}

.hangers h5 {
    font-weight: 400;
}

.hangers .hangers-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    border: 1px solid var(--grey-text-super-light);
    background: var(--grey-bg-light);
    box-shadow: 0 12px 20px -6px rgba(131,127,135,0.25);
    padding: 24px 32px 32px 32px;               
    margin: 0;
}

.hangers .hangers-card .inner {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    width: 100%;
    gap: 24px;
    margin: 0;
}

.hangers .hangers-card .title-info {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: stretch;
    gap: 20px;
    margin: 0;
}

.hangers .hangers-card .title {
    display: flex;
    flex-direction: row;
    justify-content: stretch;
    align-items: baseline;
    flex-wrap: wrap;
    flex: 1 0 0;
    width: 100%;
    gap: 0 24px;
    margin: 0;
}

.hangers .hangers-card h4 {
    font-weight: 450;
}

.hangers .hangers-card .text-info {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    max-height: 0;
    overflow: hidden;
    background: none;
    margin-top: -40px;
    transition:
        max-height 0.35s ease-in-out;
}

.hangers .hangers-card .tables {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: stretch;
    width: 100%;
    flex: 1 0 0;
    gap: 48px;
    margin-bottom: 40px;
}

.hangers .hangers-card .btn-link a {
    text-decoration: none;
    transition: all 0.5s ease-in-out;
}

.hangers .hangers-card .info-table {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between;
    flex: 1 0 0;
    width: 50vw;
    margin: 0;
}

.hangers .hangers-card .info-table .item {
    display: flex;
    flex-direction: row;
    align-items: baseline;
    vertical-align: baseline;
    justify-content: space-between;
    width: 100%;
    flex: 1 0 0;
    border-bottom: 1px solid var(--grey-text-super-light);
    gap: 8px;
    padding: 20px 0;
    margin: 0;
}

.hangers .hangers-card .info-table .item--last {
    border: none;
}

.hangers .hangers-card .subheading-4,
.hangers .hangers-card .paragraph {
    font-size: var(--fz-20);
    line-height: 120%;
}

.hangers .hangers-card .subheading-4 {
    font-weight: 450;
}

.hangers .hangers-card .title .subheading-4 {
    flex: 0 0 244px;
    max-width: none;
}

.hangers .hangers-card .title h4,
.hangers .hangers-card .title .paragraph {
    flex: 1 0 0;
    min-width: 280px;
    max-width: 100%;
}

/*  ЗАКУПКИ > КАРТОЧКИ > таблица ——— */
.hangers .hangers-card .info-table .subheading-4 {
    max-width: 244px;
}

.hangers .hangers-card .info-table .paragraph {
    text-align: right;
    width: max-content;
    min-width: fit-content;
    max-width: none;
}

/* ЗАКУПКИ > КАРТОЧКИ > развернутое состояние */
.hangers .hangers-card .text-info.is-expanded {
    min-height: fit-content;
    max-height: 800px;
    margin: 0;
}

/* ПРОТИВОДЕЙСТВИЕ КОРРУПЦИИ ——— */
.anticorruption {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    min-width: 0;
    max-width: 100vw;
    width: 100%;
    padding: 144px 64px 160px 64px;
    border-top: 0.5px solid var(--grey-text-super-light);
    background: var(--grey-bg-light);
    margin: 0;
}

.anticorruption__inner {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
    width: 100%;
    max-width: 1024px;
    gap: 80px;
    margin: 0;
}

.anticorruption__title {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: space-between;
    flex: 1 0 0;
    width: 100%;
    max-width: 440px;
    gap: 10px;
    margin: 0
}

.anticorruption h3 {
    text-align: right;
}

.anticorruption .subtext {
    font-family: var(--main-font);
    color: var(--grey-text-light);
    font-weight: 350;
    margin-right: 2px;
}

.anticorruption__main-info {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    flex: 1 0 0;
    max-width: 560px;
    gap: 32px;
    padding-top: 10px;
    margin: 0;
}

.anticorruption h5 {
    font-weight: 400;
}

.anticorruption__links-gallery {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    flex: 1 0 0;
    width: 100%;
    gap: 32px;
    margin-bottom: 12px;
}

.anticorruption__links-column {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.anticorruption a {
    text-decoration-color: var(--grey-text-super-light);
}

.anticorruption .link a:hover {
    font-weight: 400;
}

.anticorruption__CTA {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    gap: 16px;
    margin: 0;
}

.anticorruption__CTA .button {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    font-family: var(--heading-font);
    font-size: var(--fz-13);
    font-weight: 300;
    line-height: 105%; /* 12.6px */
    text-transform: uppercase;
    text-decoration: none;
    color: var(--pink-text-white);
    background: var(--pink-accent-dark);
    height: 56px;
    padding: 12px 40px;
    gap: 12px;
    min-width: 360px;
    max-width: 400px;
    margin: 0;
}

/* ФУТЕР */
footer {
    display: flex;
    flex-direction:column;
    align-items: center;
    justify-content: flex-start;
    width: 100%;
    background: var(--pink-bg-black);
    padding: 0 64px;
    margin: 0;
}

footer .inner {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    max-width: 1600px;
    gap: 240px;
    padding: 48px 0;
    margin: 0;
}

/* ФУТЕР > БРЕНДИНГ ——— */
.footer-branding {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    width: 100%;
}

.footer-branding .logo-combine {
    padding: 0;
}

.footer-branding .text {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    max-width: 490px;
    width: 100%;
    gap: 2px;
}

.footer-branding .text h4 {
    font-family: var(--main-font);
    font-size: var(--fz-28);
    font-weight: 500;
    line-height: 110%; /* 31px */
    letter-spacing: -0.5px;
    text-transform: uppercase;
    color: var(--grey-text-white);
}

.footer-branding .text p {
    font-weight: 300;
    max-width: fit-content;
    word-wrap: break-word;
    color: var(--grey-text-light);
}

/* ФУТЕР > ИНФО ——— */
.footer-info {
    display: flex;
    align-items: flex-start;
    flex-direction: row;
    justify-content: space-between;
    width: 100%;
}

.footer-info .сontact-info {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
    max-width: 490px;
    width: 100%;
    margin: 0;
}

.footer-info .office,
.footer-info .сontact-info .contacts,
.footer-info .сontact-info .social {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between;
    width: 100%;
    min-width: 180px;
    gap: 48px;
}

.footer-info .office {
    max-width: 400px;
}

.footer-info .сontact-info .contacts {
    flex: 1 0 0;
    min-width: 180px;
    max-width: 300px;
}

.footer-info .сontact-info .social {
    flex: 1 0 0;
    min-width: 160px;
    max-width: 200px;
}

.footer-info .text-info {
    display: flex;
    flex-direction: column;
    justify-content: start;
    gap: 12px;
}

.footer-info h4 {
    font-weight: var(--font-weight-subheading);
    color: var(--pink-accent-dark);
}

.footer-info .social-icons {
    display: flex;
    align-items: flex-end;
    gap: 16px;
    padding-left: 2px;
    margin-top: 8px;
}

.footer-info .social-icons a {
    height: 48px;
    aspect-ratio: 1/1;
    object-fit: contain;
    margin: 0;
}

/* ФУТЕР > МЕТА-ИНФО ——— */
.footer-meta {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
    max-width: 1600px;
    width: 100%;
    padding: 0 0 32px 0;
    border-top: 0.5px solid var(--grey-text-light);
}

.footer-meta .inner {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
    width: 100%;
    gap: 16px;
    padding: 40px 0 24px 0;
    margin: 0;
}

.footer-meta .key-info {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    width: 100%;
    max-width: 400px;
    gap: 32px;
    margin: 0;
}

.footer-meta .curators-info {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    max-width: 380px;
    gap: 32px;
    margin: 0;
}

.footer-meta .curators-logo {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    min-width: 200px;
    max-width: fit-content;
    gap: 12px;
    margin: 0;
}

.footer-meta .curators-logo img {
    display: block;
    aspect-ratio: 1/1;
    object-fit: contain;
    margin: 0;
}

.footer-meta .curators-logo img.gerb {
    height: 56px;
    width: 48px;
}

.footer-meta .curators-logo .divider-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    height: 40px;
    padding: 0;
}

.footer-meta .curators-logo .divider {
    height: 100%;
    border-right: 0.5px solid var(--grey-text-light);
    margin: 0;
}

.footer-meta .curators-logo img.wings {
    height: 28px;
    width: 90px;
    margin: 0 0 2px 0;
}

.footer__links {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
    margin: 0;
}

.footer-meta .text-info {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    width: 100%;
    max-width: 500px;
    gap: 20px;
    margin: 0;
}

.footer-meta .special-info {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    gap: 4px;
    padding: 0 24px 0 10px;
    margin: 0;
}

.footer-meta p,
.footer-meta a {
    color: var(--grey-text-light);
}

.footer-meta .text-info p {
    padding-left: 10px;
}

.footer-meta .special-info p {
    padding: 0;
}

/* СТРАНИЦА ПОЛИТИКИ КОНФИДЕНЦИАЛЬНОСТИ --- */
.policy-inner {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center; /* Центр по вертикали */
    gap: 72px;
    width: 100%;
    padding: 128px 64px 112px;
}

.policy-inner .policy-header {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    max-width: 720px;
    height: 120px;
    gap: 24px;
    margin-left: 64px;    
}

.policy-inner .policy-header img {
    display: block;
    width: 112px;
    height: auto;
    aspect-ratio: 1/1;
    object-fit: contain;
}

.policy-inner .policy-header .divider-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    height: 88px;
    padding: 2px 0 3px 0;
}

.policy-inner .policy-header .divider {
    height: 100%;
    border-right: 0.5px solid var(--grey-text-light);
    margin: 0;
}

.policy-inner .policy-header .text-info {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    max-width: 560px;
    margin: 0;
}

.policy-inner .policy-header h1 {
    font-family: var(--main-font);
    font-size: 32px;
    font-weight: 600;
    line-height: 104%; /* 33.2px */
    letter-spacing: -0.6px;
    text-align: left;
    text-transform: uppercase;
    color: var(--pink-text-black);
    margin: 0;
}

.policy-inner .policy-header .lead-3 {
    font-weight: 300;
    text-align: center;
    color: var(--grey-text-main);
    margin-left: 1px;
}

.policy-inner .key-info {
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: 800px;
    gap: 40px;
}
    
.policy-inner h3 {
    font-size: var(--fz-32);
    width: 100%;
    margin: 0;
}

.policy-inner h5 {
    font-family: var(--main-font);
    font-size: var(--fz-18);
    text-align: left;
    font-weight: 500;
    line-height: 112%; /* 20.16px */
    letter-spacing: -0.18px;
    color: var(--grey-text-main);
    margin: 0 0 4px 2px;
}

.policy-inner .key-info p {
  font-size: var(--fz-18);
  font-weight: 300;
  line-height: 140%; /* 23.8px */
  letter-spacing: -0.15px;
  color: var(--grey-text-main);
  margin: 0;
}

.policy-inner .key-info .text-info,
.policy-inner .key-info .text-info--primary,
.policy-inner .key-info .text-info--secondary {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    gap: 16px;
    margin: 0;
}

.policy-inner .key-info .text-info--secondary {
    padding-left: 32px;
}

.policy-inner .key-info .info-list {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    gap: 16px;
    padding: 4px 0 0 32px;
    margin: 0;
}

.policy-inner .key-info ul.body li,
.policy-inner .key-info ul.body-base li {
    position: relative;
    font-family: var(--main-font);
    font-size: 17px;
    font-weight: 300;
    line-height: 140%;
    letter-spacing: -0.2px;
    color: var(--grey-text-main);
    text-align: left;
    margin: 0;
    padding-left: 20px;
}

.policy-inner .key-info ul.body-base li {
    padding-left: 44px;
}

.policy-inner .key-info ul.body li::before {
    content: "•";
    position: absolute;
    left: 0;
    top: 1.5px;
    font-size: var(--fz-24);
    color: var(--pink-text-dark);
}

.policy-inner h4 {
    font-size: var(--fz-24);
    color: var(--grey-text-main);
    margin: 0;
}

.policy-inner .key-info a {
    color: var(--grey-text-light);
    text-decoration-color: var(--grey-text-super-light);
}

/* СТРАНИЦА ПОЛИТИКИ ПЕРСОНАЛЬНЫХ ДАННЫХ --- */
.policy__key-info {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    width: 100%;
    max-width: 800px;
    gap: 40px;
    margin-inline: auto;
}

.policy__head {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    gap: 16px;
    margin: 0;
}

.policy__head--end {
    margin-top: 40px;
}

.policy__text-info {
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: 800px;
    gap: 20px;
    margin: 0;
}

.policy__heading-block {
    display: grid;
    align-items: start;
    justify-content: start;
    grid-template-columns: 
        minmax(28px, 32px)
        minmax(0, auto);
    width: 100%;
    gap: 12px;
}

.policy__text-block {
    display: grid;
    align-items: start;
    justify-content: start;
    grid-template-columns: 
        minmax(28px, 32px)
        minmax(0, auto);
    width: 100%;
    gap: 12px;
    margin-bottom: 2px;
}

.policy__text-block--inside {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.policy__list-block {
    display: flex;
    align-items: start;
    flex-direction: column;
    width: 100%;
    max-width: 800px;
    gap: 16px;
    margin: 0;
}

.policy__inside-list {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.policy__key-info li::before {
    content: "•";
    position: absolute;
    left: 0;
    top: 2.5px;
    font-size: var(--fz-24);
    color: var(--pink-text-dark);
}

.policy__key-info h4.punkt {
    display: flex;
    text-align: right;
    justify-content: end;
}

.policy__key-info p.punkt {
    display: flex;
    text-align: center;
    justify-content: end;
}

.policy__key-info h3 {
    font-size: var(--fz-32);
    text-align: center;
    width: 100%;
    margin: 0;
}

.policy__key-info h4 {
    font-size: var(--fz-24);
    color: var(--grey-text-main);
    margin: 0;
}

.policy__key-info h5 {
    font-family: var(--main-font);
    font-size: var(--fz-20);
    text-align: left;
    font-weight: 500;
    line-height: 112%;
    letter-spacing: -0.15px;
    color: var(--grey-text-main);
    margin: 0;
}

.policy__key-info p {
    font-size: var(--fz-18);
    font-weight: 300;
    line-height: 140%;
    letter-spacing: -0.15px;
    color: var(--grey-text-main);
    margin: 0;
}

.policy__key-info li {
    position: relative;
    font-family: var(--main-font);
    font-size: 17px;
    font-weight: 300;
    line-height: 140%;
    letter-spacing: -0.2px;
    color: var(--grey-text-main);
    text-align: left;
    margin: 0;
    padding-left: 20px;
}

.policy__key-info a {
    color: var(--grey-text-light);
    text-decoration-color: var(--grey-text-super-light);
}

/* ВАКАНСИИ > HERO --- */
.vacancy-hero {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    height: calc(100vh - 64px);
    min-width: 0;
    max-width: 100vw;
    width: 100%;
    background-image: url(../img/bg/MP-hero_bg_v1.1.jpg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    margin-top: var(--header-height-l);
}

.vacancy-hero .inner {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    min-width: 0;
    max-width: 870px;
    width: 100%;
    height: 100%;
    padding-left: 40px;
    margin: 0;
}

.vacancy-hero .key-info {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    gap: 20px;
    padding: 0;
    margin: 0;
}

.vacancy-hero .logo {
    width: 128px;
    height: auto;
    transition: none !important;
    margin-right: 4px;
    margin-bottom: 4px;
    object-fit: contain;
}

.vacancy-hero .divider-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    height: 144px;
    padding: 7px 0 0 0;
}

.vacancy-hero .divider {
    height: 100%;
    border-right: 0.5px solid var(--pink-text-white);
    margin: 0;
}

.vacancy-hero .text-info {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    max-width: min-content;
    padding-top: 8px;
    margin: 0;
}

.vacancy-hero h1 {
    font-size: var(--fz-40);
    font-weight: 400;
    line-height: 103%; /* 41.6px */
    letter-spacing: -1.25px;
    text-align: left;
    color: var(--pink-text-white);
    text-transform: uppercase;
    margin: 0;
}

.vacancy-hero p {
    font-family: var(--main-font);
    font-size: var(--fz-17);
    font-weight: 200;
    line-height: 140%; /* 23.8px */
    letter-spacing: -0.25px;
    color: var(--pink-text-white);
    padding-left: 2px;
    margin: 0;
}

.vacancy-hero .subtext {
    position: absolute;
    padding-bottom: 1px;
    bottom: 12px;
    left: 50%;
    font-size: var(--fz-13);
    color: var(--pink-text-white);
    transform: translateX(-50%);
    margin: 0;
}

/* --- ВАКАНСИИ > АКТУАЛЬНЫЕ ПРЕДЛОЖЕНИЯ --- */
.vacancies {
    display: flex;
    flex-direction: column;
    align-items: center;
    max-width: 100vw;
    width: 100%;
    background-color: var(--grey-bg);
    padding: 96px 64px 64px 64px;
    margin: 0;
    scroll-margin-top: 64px;
}

.vacancies .inner {
    display: flex;
    flex-direction: column;
    align-items: center; 
    justify-content: center;
    max-width: 100vw;
    width: 100%;
    gap: 96px;
    margin: 0;
}

.vacancies .vacancy-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 1600px;
    width: 100%;
    padding: 0 4px;
    margin: 0;
}

.vacancy-header .key-info {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    gap: 16px;
    margin: 0;
}

.vacancies .vacancy-header img.logo {
    width: var(--logo-width-m);
    margin-bottom: var(--logo-padding-btm-l);
}

.vacancies .vacancy-header .divider-wrapper {
    display: flex;
    align-items: center;
    width: 1px;
    height: 76px;
    padding: 3px 0 0 3px;
    margin: 0;
}

.vacancies .vacancy-header .divider {
    height: 100%;
    border-right: 0.5px solid var(--pink-text-black);
    margin: 0;
}

.vacancies .vacancy-header .text-info {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    max-width: 800px;
    width: 100%;
    margin-top: 2px;
}

.vacancy-header .key-info h1 {
    font-family: var(--main-font);
    font-size: var(--fz-28);
    font-weight: 600;
    line-height: 105%; /* 32.24px */
    letter-spacing: -0.62px;
    text-align: left;
    text-transform: uppercase;
    color: var(--pink-text-black);
    margin: 0;
}

.vacancies .vacancy-header h2 {
    font-size: var(--fz-40);
    line-height: 108%;
    text-align: right;
    max-width: 320px;
    margin: 0 0 4px 0;
}

.vacancies .vacancy-header p {
    font-size: var(--fz-16);
    font-weight: 300;
    line-height: 120%;
    letter-spacing: -0.3px;
    color: var(--pink-text-black);
    padding-left: 1px;
    margin: 0;
}

.vacancies .vacancy__empty {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: var(--text-info-gap-xl);
    width: 100%;
    max-width: var(--container-width-min);
}

.vacancies .vacancy__empty p {
    text-align: center;
}

/* --- ВАКАНСИИ > СПИСОК ОТДЕЛОВ --- */
.department-list {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    max-width: 1200px;
    margin: 0;
}

.department-list h2 {
    font-size: var(--fz-48);
    line-height: 108%; /* 51.8px */
    letter-spacing: -0.96px;
    color: var(--pink-text-black);
    text-align: right;
    font-weight: 500;
    margin: 0;
}

/* пункты списка (первый и остальные) */
.department-list .department-first,
.department-list .department {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    height: auto;
    border-top: 0.5px solid var(--grey-text-super-light);
    margin: 0;
}

.department-list .department-first {
    border-top: none;
}

.department-list .content {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    min-height: 96px;
    gap: 20px;
    padding: 0 18px 0 24px;
    background: var(--grey-bg-light);
        transition: 
        transform 0.25s ease,
        color 0.25s ease;
}

/* hover состояние */
.department-list .content:hover {
    background: var(--grey-bg-white);
    border: none;
    cursor: pointer;
}

/* pressed состояние */
.department-list .department-first.pressed,
.department-list .department.pressed {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 32px;
    padding-bottom: 40px;
}

/* pressed состояние */
.department-list .department-first.pressed .content,
.department-list .department.pressed .content {
    border-top: none;
    background: var(--pink-bg-light);
}

.department-list .key-info {
    display: flex;
    flex-direction: row;
    align-items: center;
    flex: 1; /* занимает всё свободное пространство */
    width: 100%;
    gap: 24px;
    margin-bottom: 2px;
}

.department-list .number {
    display: flex;
    flex-direction: column;
    align-items: center;
    flex: 0 0 44px; /* фиксированная ширина числа */
    width: 100%;
    padding: 8px 0 4px 0;
    margin: 0;
}

.department-list .number p {
    font-family: var(--main-font);
    font-size: 68px;
    font-weight: 400;
    line-height: 100%; /* 68px */
    letter-spacing: 0;
    text-align: center;
    color: var(--grey-text-super-light);
    margin: 0;
}

/* hover и pressed состояния number */
.department-list .department-first:hover .number p,
.department-list .department:hover .number p {
    color: var(--grey-text-light);
}

.department-list .department-first.pressed .number p,
.department-list .department.pressed .number p {
    color: var(--pink-text-light);
}

.department-list .text-info {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    flex: 1;
    min-width: 0; /* обязательно, чтобы текст не схлопывался */
    max-width: 100vw;
    width: 100%;
    gap: 12px;
    margin: 0;
}

.department-list .subheading-3 {
    font-size: var(--fz-24);
    font-weight: 400;
    line-height: 115%; /* 27.6px */
    letter-spacing: -0.25px;
    color: var(--grey-text-main);
    margin: 0;
}

/* hover и pressed состояния subheading-3 */
.department-list .department-first:hover .subheading-3,
.department-list .department:hover .subheading-3 {
    font-weight: 500;
}

.department-list .department-first.pressed .subheading-3,
.department-list .department.pressed .subheading-3 {
    color: var(--pink-text-black);
    font-weight: 500;
}

.department-list .subtext {
    font-size: var(--fz-14);
    color: var(--grey-text-light);
    letter-spacing: -0.25px;
    margin: 0;
}

/* hover и pressed состояния subtext */
.department-list .department-first:hover .subtext,
.department-list .department:hover .subtext {
    color: var(--grey-text-main);
}

.department-list .department-first.pressed .subtext,
.department-list .department.pressed .subtext {
    color: var(--pink-text-light);
}

.department-list .content .arrow-down {
    display: block;
    width: 48px;
    aspect-ratio: 1/1;
    transition: transform 0.25s ease;
}

/* hover и pressed состояния arrow */
.department-list .department-first:hover .content .arrow-down,
.department-list .department:hover .content .arrow-down {
    transform: scale(1.1); /* Увеличение на 10% */
}

.department-list .department-first.pressed .content .arrow-down,
.department-list .department.pressed .content .arrow-down {
  transform: rotate(180deg);
}

/* --- ВАКАНСИИ > СПИСОК ОТДЕЛОВ > СПИСОК ВАКАНСИЙ (раскрывающаяся часть) --- */
.department-list .vacancy-list {
    display: none; /* скрыто по умолчанию */
    flex-direction: column;
    align-items: center;
    max-width: 1200px;
    width: 100%;
    gap: 0;
    margin: 0;
}

/* показываем только у нажатого пункта */
.department-list .department-first.pressed > .vacancy-list,
.department-list .department.pressed > .vacancy-list {
    display: flex;
}

.vacancy-list a.vacancy-first,
.vacancy-list a.vacancy,
.vacancy-list a.vacancy-last {
    display: flex;
    align-items: center;
    justify-content: space-between;
    max-width: 900px;
    width: 100%;
    height: auto;
    min-height: 88px;
    text-decoration: none;
    border-top: 0.5px solid var(--grey-text-super-light);
    background: var(--grey-bg-light);
    gap: 24px;
    padding: 6px 20px 8px 24px;
    margin: 0;
    transition: 
        transform 0.25s ease,
        color 0.25s ease;
}

.vacancy-list a.vacancy-first {
    border-top: none;
}

.vacancy-list a.vacancy-last {
    border-bottom: none;
}

.vacancy-list a .text-info {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
    padding: 2px 0 4px 0;
    margin: 0;
}

.vacancy-list h4 {
    font-family: var(--heading-font);
    font-size: var(--fz-24);
    font-weight: 450;
    line-height: 115%; /* 27.6px */
    text-align: left;
    color: var(--pink-text-black);
    margin: 0;
}

.vacancy-subtext {
    font-family: var(--main-font);
    font-size: var(--fz-13);
    font-weight: 400;
    line-height: 120%; /* 15.6px */
    letter-spacing: -0.25px;
    text-align: left;
    color: var(--grey-text-light);
    padding-left: 1px;
    margin: 0;
}

.vacancy-list a .arrow-forward {
    display: block;
    align-items: center;
    width: 48px;
    aspect-ratio: 1/1;
    transition: transform 0.25s ease;
}

.vacancy-list a:hover {
    background: var(--grey-bg-white);
    border: none;
    transform: scale(1.025);
}

.vacancy-list a:hover .text-info {
    transform: translateX(-8px); /* лёгкий сдвиг влево */
}

.vacancy-list a:hover h4 {
    font-weight: 500;
}

.vacancy-list a:hover .vacancy-subtext {
    color: var(--pink-text-black);
}

.vacancy-list a:hover .arrow-forward {
    transform: translateX(8px); /* лёгкий сдвиг вперёд */
}

/* --- active --- */
.vacancy-list a:active {
    background: var(--pink-bg-light);
    color: var(--pink-text-black);
}

.vacancy-list a:active h4,
.vacancy-list a:active .vacancy-subtext {
    color: var(--pink-text-black);
}

/* --- ВАКАНСИИ > О НАС --- */
.vacancy-about-us {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    max-width: 100vw;
    min-width: 0;
    width: 100%;
    background: var(--grey-bg-white);
    padding: 32px 64px;
    scroll-margin-top: 32px;
    margin: 0;
}

.vacancy-about-us .inner {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    width: 100%;
    max-width: 1600px;
    height: 100%;
    gap: 80px;
    padding: 64px 0 80px 0;
    margin: 0;
}

.vacancy-about-us h1 {
    text-align: center;
    font-size: var(--fz-64);
    line-height: 112%; /* 71px */
    letter-spacing: -1px;
    color: var(--grey-text-main);
    padding-bottom: 24px;
    margin: 0;
}

/* --- ВАКАНСИИ > ОБ ИНСТИТУТЕ + О КОМАНДЕ --- */
.vacancy-about-us .vacancy-institute,
.vacancy-about-us .vacancy-team {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    min-width: 1152px;
    max-width: 100vw;
    width: 100%;
    height: 100%;
    border-top: 0.5px solid var(--grey-text-light);
    padding: 16px 0 32px 0;
    margin: 0;
    scroll-margin-top: 80px;
}

.vacancy-about-us .vacancy-institute .text-info,
.vacancy-about-us .vacancy-team .text-info {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    min-width: 0;
    width: 100%;
    gap: 80px;
    margin: 0;
}

.vacancy-about-us h2 {
    text-align: left;
    font-size: var(--fz-48);
    line-height: 110%; /* 52px */
    letter-spacing: -0.5px;
    color: var(--grey-text-main);
    min-width: 400px;
    padding-bottom: 4px;
    margin: 0;
}

.vacancy-about-us .vacancy-institute .main-text,
.vacancy-about-us .vacancy-team .main-text {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between;
    flex: 1 0 0;
    min-width: 600px;
    max-width: 800px;
    width: 100%;
    gap: 20px;
    padding-top: 12px;
    margin: 0;
}

.vacancy-about-us .lead-2 {
    line-height: 140%; /* 34px */
    letter-spacing: -0.5px;
    color: var(--grey-text-main);
    margin: 0;
}

.vacancy-about-us .subtext {
    font-size: var(--fz-16);
    text-align: left;
    font-weight: 200;
    line-height: 135%; /* 20.2px */
    letter-spacing: -0.1px;
    color: var(--grey-text-light);
    margin: 0;
}

/* --- ВАКАНСИИ > ГАЛЕРЕЯ ЭЛЕМЕНТОВ ——— */
.vacancy-about-us .element-gallery {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: stretch;
    flex-wrap: nowrap;
    width: 100%;
    margin: 0;
}

.vacancy-about-us .element-gallery .element img {
    display: block;
    aspect-ratio: 1/1;
    flex: 1 1 160px;
    max-width: 160px;
    width: 100%;
    margin: 0;
}

.vacancy-about-us .element-gallery .logo {
    width: 88px;
    height: auto;
    transition: none !important;
    object-fit: contain;
    margin: 24px 48px 28px 48px;
}

/* --- ВАКАНСИИ > РАБОТА У НАС > МЫ ПРЕДЛАГАЕМ ——— */
.vacancy-about-us .our-offer {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    width: 100%;
    max-width: 800px;
    gap: 48px;
    padding: 56px 0 48px 0;
    margin: 0;
    scroll-margin-top: 112px;
}

.vacancy-about-us .our-offer .key-info,
.vacancy-about-us .our-offer .info-item-subtext {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    max-width: 624px;
    padding: 0 8px 0 4px;
    gap: 16px;
    margin: 0;
}

.vacancy-about-us .our-offer .info-item,
.vacancy-about-us .our-offer .main-info {
    display: flex;
    flex-direction: row;
    align-items: center;
    width: 100%;
    gap: 24px;
}

.vacancy-about-us .our-offer img {
    width: 96px;
    aspect-ratio: 1/1;
}

.vacancy-about-us .our-offer .lead-2 {
    font-size: var(--fz-24);
    color: var(--grey-text-black);
    text-align: left;
    font-weight: 300;
    line-height: 140%; /* 32.4px */
    letter-spacing: -0.5px;
}

.vacancy-about-us .our-offer .subtext {
    text-align: left;
    font-size: var(--fz-16);
    color: var(--grey-text-light);
} 

.vacancy-about-us .our-offer .info-item-subtext {
    padding-left: 0;
    padding-top: 16px;
}

.vacancy-about-us .our-offer .secondary-info {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    width: 100%;
    gap: 6px;
    padding: 0 24px 0 120px;
    margin: 0;
}

/* --- ВАКАНСИИ > НАШИ КУРАТОРЫ ——— */
.vacancy-about-us .curators {
    background: none;
    padding: 32px 0 0 0;
    scroll-margin-top: 120px;
}

.vacancy-about-us .curators .inner {
    gap: 360px;
}

.vacancy-about-us .curators .title {
    border-top: 0.5px solid var(--grey-text-light);
    padding-top: 16px;
}

/* --- ВАКАНСИИ > КОНТАКТЫ ——— */
.vacancy-about-us .contacts  {
    display: flex;
    flex-direction: row;
    align-items: center;
    max-width: 100vw;
    width: 100%;
    border-top: 0.5px solid var(--grey-text-light);
    padding: 16px 0 0 0;
    margin: 0;
    scroll-margin-top: 112px;
}

.vacancy-about-us .contacts .inner {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    justify-content: space-between;
    width: 100%;
    gap: 40px;
    padding: 0;
    margin: 0;
}

.vacancy-about-us .contacts .text-info {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between;
    flex: 1 0 0;
    max-width: 400px;
    width: 100%;
    margin: 0;
}

.vacancy-about-us .contacts .main-text {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    width: 100%;
    gap: 16px;
    margin: 0;
}

.vacancy-about-us .cta {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
    flex: 1 0 0;
    min-width: 600px;
    max-width: 740px;
    width: 100%;
    gap: 28px;
    padding: 14px 0 6px 0;
    margin: 0;
}

.vacancy-about-us .cta .text-block {
    display: flex;
    flex-direction: column;
    gap: 20px;
    padding-bottom: 8px;
    margin: 0;
}

.vacancy-about-us h3 {
    font-size: var(--fz-28);
}

.vacancy-about-us .button {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 56px;
    width: 100%;
    max-width: 360px;
    padding: 12px 40px;
    gap: 12px;
    background: var(--pink-accent-dark);
    font-family: var(--heading-font);
    font-size: var(--fz-12);
    font-weight: 400;
    line-height: 105%; /* 12.6px */
    text-transform: uppercase;
    text-decoration: none;
    color: var(--pink-text-white);
}

.vacancy-about-us .button:hover {
    background: var(--pink-text-black);
    color: var(--pink-text-white);
    border: none;
}

.vacancy-about-us .button:active {
    background: var(--pink-bg-super-dark);
    transform: scale(0.97);
    transition: transform 0.05s ease;
}

/* --- СТРАНИЦА ВАКАНСИИ > ШАПКА ВАКАНСИИ --- */
.vacancy-main-info {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    padding: 88px 64px;
    gap: 40px;
    margin-top: 64px;
}

.vacancy-main-info .vacancy-header {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    width: 100%;
    max-width: 716px;
    height: fit-content;
    gap: 32px;    
}

.vacancy-main-info .vacancy-header .ident {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 0;
}

.vacancy-main-info .vacancy-header .ident img {
    display: flex;
    align-items: center;
    width: 78px;
    max-height: 74px;
    object-fit: contain;
    padding-right: 2px;
}

.vacancy-main-info .vacancy-header .lead-3 {
    font-weight: 300;
    line-height: 98%;
    text-align: center;
    color: var(--grey-text-main);
}

.vacancy-main-info .divider-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    height: 90px;
    width: 2px;
    padding: 4px 0 1px 0;
    margin: 0;
}

.vacancy-main-info .divider {
    display: flex;
    height: 100%;
    align-items: center;
    outline: 0.5px solid var(--grey-text-light);
    opacity: 0.5;
    margin: 0;
}

.vacancy-main-info .text-info {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    max-width: 564px;
    gap: 3px;
    margin: 0;
}

.vacancy-main-info h1 {
    font-family: var(--main-font);
    font-size: 32px;
    font-weight: 600;
    line-height: 112%;
    letter-spacing: -0.5px;
    text-align: left;
    text-transform: uppercase;
    color: var(--pink-text-black);
    margin: 0;
}

.vacancy-main-info .vacancy-header .text-info .lead-3 {
    line-height: 100%;
    padding-left: 1px;
}

/* --- СТРАНИЦА ВАКАНСИИ > ОПИСАНИЕ ВАКАНСИИ --- */
.vacancy-main-info .key-info {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    max-width: 1200px;
    gap: 72px;
    padding-top: 48px;
    margin: 0;
}

.vacancy-main-info .key-info .text-info {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    max-width: 800px;
    gap: 24px;
    margin: 0;
}

.vacancy-main-info .key-info .text-info h2 {
    text-align: center;
    font-size: 48px;
    font-weight: 550;
    line-height: 108%;
    letter-spacing: -1px;
    color: var(--grey-text-main);
    margin: 0;
}

.vacancy-main-info .key-info .text-info p {
    text-align: center;
    color: var(--grey-text-light);
    margin: 0;
}

/* --- СТРАНИЦА ВАКАНСИИ > РАСКРЫВАЮЩЕЕСЯ МЕНЮ --- */
.vacancy-main-info .vacancy-info {
    display: flex;
    flex-direction: column;
    align-items: center;
    max-width: 800px;
    width: 100%;
    gap: 32px;
    padding-bottom: 32px;
}

.vacancy-main-info .vacancy-info .require,
.vacancy-main-info .vacancy-info .require-skills {
    display: flex;
    flex-direction: column;
    justify-content: stretch;
    align-items: center;
    gap: 40px;
    width: 100%;
    max-width: 960px;
    border-top: 0.5px solid var(--grey-text-super-light);
    padding: 8px 0;
}

.vacancy-main-info .vacancy-info .require-title {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    cursor: pointer;
}

.vacancy-main-info .vacancy-info h3 {
    text-align: left;
    font-weight: 500;
    color: var(--grey-text-main);
    margin: 0;
    transition: font-weight 0.25s ease, transform 0.25s ease;
}

.vacancy-main-info .shevron-down {
    width: 24px;
    aspect-ratio: 1 / 1;
    transition: transform 0.25s ease;
}

/* hover */
.vacancy-main-info .vacancy-info .require-title:hover h3 {
    font-weight: 550;
    transform: scale(1.01);
}

.vacancy-main-info .vacancy-info .require-title:hover .shevron-down {
    transform: scale(1.1);
}

/* список */
.vacancy-main-info ul.body {
    display: flex;
    flex-direction: column;
    gap: 16px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.vacancy-main-info p,
.vacancy-main-info ul.body li {
    position: relative;
    font-family: var(--main-font);
    font-size: var(--fz-17);
    font-weight: 300;
    line-height: 140%;
    letter-spacing: -0.2px;
    color: var(--grey-text-main);
    text-align: left;
}

.vacancy-main-info ul.body li {
    padding-left: 20px;
}

.vacancy-main-info ul.body li::before {
    content: "•";
    position: absolute;
    left: 0;
    top: 1.5px;
    font-size: var(--fz-24);
    color: var(--pink-text-dark);
}

/* скрытый список */
.vacancy-main-info .info-list {
    display: none;
    flex-direction: column;
    gap: 32px;
    max-width: 720px;
    width: 100%;
    padding: 0 40px 0 44px;
    transition: opacity 0.3s ease;
}

.require-skills .info-list .require-type {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.vacancy-main-info .require-skills .info-list h5 {
    font-size: var(--fz-18);
    color: var(--grey-text-main);
    text-align: left;
    margin: 0;
}

/* активный */
.vacancy-main-info .require.active .info-list,
.vacancy-main-info .require-skills.active .info-list {
    display: flex;
    opacity: 1;
    padding-bottom: 32px;
}

.vacancy-main-info .require.active .shevron-down,
.vacancy-main-info .require-skills.active .shevron-down {
    transform: rotate(180deg);
}

/* кнопки */
.vacancy-main-info .button-wrapper {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    width: 100%;
    max-width: 800px;
    gap: 8px;
}

.vacancy-main-info .button,
.vacancy-main-info .button-secondary {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 56px;
    width: 100%;
    max-width: 400px;
    padding: 12px 40px;
    gap: 12px;
    background: var(--pink-accent-dark);
    font-family: var(--heading-font);
    font-size: var(--fz-12);
    font-weight: 400;
    line-height: 105%; /* 12.6px */
    text-transform: uppercase;
    text-decoration: none;
    color: var(--pink-text-white);
}

.vacancy-main-info .button-secondary {
    background: none;
    border: 1px solid var(--pink-bg-super-dark);
    color: var(--pink-text-black);
}

.vacancy-main-info .button:hover,
.vacancy-main-info .button-secondary:hover {
    background: var(--pink-text-black);
    color: var(--pink-text-white);
    border: none;
}

.vacancy-main-info .button:active,
.vacancy-main-info .button-secondary:active {
    background: var(--pink-bg-super-dark);
    transform: scale(0.97); /* лёгкое сжатие при нажатии */
    transition: transform 0.05s ease;
}

/* --- СТРАНИЦА ВАКАНСИИ > РАБОТА У НАС ——— */
.work-with-us {
    display: flex;
    flex-direction: column;
    justify-content: stretch;
    align-items: center;
    width: 100%;
    gap: 80px;
    padding: 0 0 96px 0;
    margin: 0;
}

.work-with-us h3 {
    font-size: var(--fz-32);
    font-weight: 550;
    line-height: 125%; /* 40px */
    letter-spacing: -0.5px;
    color: var(--grey-text-main);
    margin-bottom: 4px;
}

/* --- СТРАНИЦА ВАКАНСИИ > РАБОТА У НАС > МЫ ПРЕДЛАГАЕМ ——— */
.work-with-us .our-offer {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    max-width: 1200px;
    gap: 32px;
    padding: 80px 0 0 0;
    border-top: 1px solid var(--grey-text-super-light);
}

.work-with-us .our-offer .key-info,
.work-with-us .our-offer .info-item-subtext {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    max-width: 640px;
    gap: 4px;
    padding: 0;
    margin: 0;
}

.work-with-us .our-offer .info-item,
.work-with-us .our-offer .main-info {
    display: flex;
    flex-direction: row;
    align-items: center;
    width: 100%;
    gap: 16px;
    margin: 0;
}

.work-with-us .our-offer img {
    width: 96px;
    aspect-ratio: 1/1;
}

.work-with-us .our-offer .lead-2 {
    font-size: var(--fz-24);
    color: var(--pink-text-black);
    text-align: left;
    font-weight: 400;
    line-height: 135%; /* 32.4px */
    letter-spacing: -0.5px;
}

.work-with-us .our-offer .secondary-info {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    width: 100%;
    gap: 6px;
    padding: 8px 24px 0 112px;
    margin: 0;
}

.work-with-us .our-offer .subtext {
    font-size: var(--fz-16);
    line-height: 132%;
    color: var(--grey-text-light);
    margin: 0;
}

.work-with-us .other,
.work-with-us .contacts  {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    max-width: 1200px;
    gap: 32px;
    padding: 72px 0 16px 0;
    border-top: 1px solid var(--grey-text-super-light);
}

.work-with-us .element-gallery {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    flex-wrap: wrap;
    width: 100%;
    max-width: 600px;
}

.work-with-us .element {
    display: flex;
    width: 100%;
    flex: 0 0 200px;
    outline: 0.5px solid var(--grey-text-super-light);
}

.work-with-us .other .main-text,
.work-with-us .contacts .main-text {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    max-width: 560px;
    gap: 16px;
    padding-bottom: 24px;
    margin: 0;
}

.work-with-us .button {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 56px;
    width: 100%;
    max-width: 400px;
    padding: 12px 40px;
    gap: 12px;
    background: var(--pink-accent-dark);
    font-family: var(--heading-font);
    font-size: var(--fz-12);
    font-weight: 400;
    line-height: 105%; /* 12.6px */
    text-transform: uppercase;
    text-decoration: none;
    color: var(--pink-text-white);
}

.work-with-us .button:hover {
    background: var(--pink-text-black);
    color: var(--pink-text-white);
    border: none;
}

.work-with-us .button:active {
    background: var(--pink-bg-super-dark);
    transform: scale(0.97);
    transition: transform 0.05s ease;
}

/* COOKIES*/
.cookie-popup {
    display: none;
    justify-content: center;    
    position: fixed;           
    padding: 32px 0px;
    bottom: 0;                
    width: 100%;
    background-color: var(--grey-bg-black);
    border-top: 1.25px solid var(--grey-text-light);
    z-index: 20;
}

.cookie-popup__inner {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 32px;
    max-width: 900px;
    width: 100%;
    flex-wrap: wrap;                   
}

.cookie-popup p {
    text-align: center;
    max-width: var(--text-info-width-xl);
    color: var(--grey-text-super-light);
}

.cookie-popup button:hover {
  background: var(--pink-bg-white);
  color: var(--pink-text-black);
}

/* --- СТРАНИЦА КОНКУРСА > HEADER --- */
header.wide-header {
    max-width: 100vw;
    padding: 0;
    height: 64px;
    margin: 0;
}

header.wide-header .content-wrapper {
    display: flex;
    max-width: 1920px;
    min-width: 0;
    width: 100%;
    padding: 0;
    margin: 0 64px;
}

/* --- СТРАНИЦА КОНКУРСА > HERO --- */
.konkurs-hero {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: var(--pink-bg-white);
    min-width: 0;
    max-width: 100vw;
    width: 100%;
    padding: 56px 64px 72px 64px;
    margin-top: var(--header-height-l);
}

.konkurs-hero .inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-width: 0;
    max-width: 1900px;
    width: 100%;
    height: 100%;
    gap: 112px;
    margin: 0;
}

.konkurs-hero .main-info {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    flex-wrap: nowrap;
    width: 100%;
    row-gap: 64px;
    margin: 0;
}

.konkurs-hero .key-info {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: stretch;
    flex: 1 1 580px;
    min-width: 580px;
    max-width: 836px;
    width: 100%;
    min-height: 672px;
    height: auto; 
    margin: 0;
}

.konkurs-hero img {
    display: block;
    flex: 1 1 576px;
    min-width: 576px;
    max-width: 956px;
    width: 100%;
    min-height: 672px;
    object-fit: contain;
    margin-top: 40px;
}

.konkurs-hero .title {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    gap: 12px;
    margin: 0;
}

.konkurs-hero .key-info h1 {
    font-size: var(--fz-64);
    font-weight: 500;
    line-height: 112%; /* 71px */
    margin: 0;
}

.konkurs-hero .secondary-info h1 {
    font-size: var(--fz-64);
    font-weight: 500;
    line-height: 112%; /* 71px */
    color: var(--pink-accent-dark);
    margin: 0;
}

.konkurs-hero .key-info .subheading-2 p {
    color: var(--pink-text-black);
    font-family: var(--main-font);
    font-size: 40px;
    font-weight: 400;
    line-height: 110%; /* 44px */
    letter-spacing: -0.4px;
}

.konkurs-hero h3 {
    font-size: var(--fz-32);
    font-weight: 450;
    line-height: 125%; /* 40px */
    letter-spacing: -0.5px;
    color: var(--pink-text-black);
    margin-bottom: 8px;
}

.konkurs-hero .secondary-info {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 100%;
    max-width: 1900px;
    margin: 0;
}

.konkurs-hero .event-date {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    flex: 1 0 576px;
    min-width: 576px;
    max-width: 836px;
    width: 100%;
    gap: 20px;
    padding-right: 80px;
    margin-right: auto;
}

.konkurs-hero .cta {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
    flex: 1 0 576px;
    min-width: 576px;
    max-width: 836px;
    width: 100%;
    gap: 32px;
    margin-right: auto;
}

/* кнопки */
.konkurs-hero .button-wrapper {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: flex-start;
    flex-wrap: wrap;
    max-width: 800px;
    width: 100%;
    gap: 2px;
    margin: 0;
}

.konkurs-hero .button,
.konkurs-hero .button-secondary {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 56px;
    flex: 1 0 340px;
    min-width: 340px;
    max-width: 640px;
    padding: 10px 40px;
    gap: 12px;
    background: var(--pink-accent-dark);
    font-family: var(--heading-font);
    font-size: var(--fz-12);
    font-weight: 400;
    line-height: 105%; /* 12.6px */
    text-transform: uppercase;
    text-decoration: none;
    color: var(--pink-text-white);
}

.konkurs-hero .button-secondary {
    background: none;
    border: 1px solid var(--pink-accent-dark);
    color: var(--pink-accent-dark);
}

.konkurs-hero .button:hover,
.konkurs-hero .button-secondary:hover {
    min-width: 360px;
    background: var(--pink-bg-black);
    color: var(--pink-text-white);
    border: none;
}

.konkurs-hero .button:active,
.konkurs-hero .button-secondary:active {
    background: var(--pink-bg-super-dark);
    transform: scale(0.97); /* лёгкое сжатие при нажатии */
    transition: transform 0.05s ease;
}

/* --- СТРАНИЦА КОНКУРСА > INTRO --- */
.konkurs-intro {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    min-width: 0;
    max-width: 100vw;
    width: 100vw;
    background-image: url("../img/bg/pattern/struckaxiom-dark-bg.png");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    padding: 64px;
    margin: 0;
}

.konkurs-intro .inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-width: 0;
    max-width: 1900px;
    width: 100%;
    height: 100%;
    gap: 64px;
    margin: 0;
}

.konkurs-intro h1 {
    font-size: var(--fz-64);
    font-weight: 500;
    line-height: 112%; /* 71px */
    color: var(--grey-text-white);
    display: flex;
    flex: 1 0 576px;
    min-width: 576px;
    max-width: 836px;
    padding-right: 80px;
    padding-bottom: 8px;
    margin-right: auto;
}

.konkurs-intro .brand-name {
    font-family: var(--main-font);
    font-size: var(--fz-40);
    color: var(--grey-text-white);
    font-weight: 500;
    line-height: 104%; /* 41.6px */
    letter-spacing: -0.4px;
    text-transform: uppercase;
    margin: 0;
}

.konkurs-intro .paragraph {
    color: var(--grey-text-light);
    margin-left: 2px;
    text-wrap: wrap;
}

.konkurs-intro .organisation {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap: nowrap;
    min-width: 0;
    max-width: 1900px;
    width: 100%;
    border-top: 0.5px solid var(--pink-bg-light);
    padding: 16px 0 64px 0;
    margin: 0;
}

.konkurs-intro .key-info {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
    flex: 1 0 576px;
    min-width: 576px;
    max-width: 836px;
    width: 100%;
    gap: 2px;
    padding: 18px 0;
    margin: 0 auto;
}

.konkurs-intro .element-gallery {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    max-width: 1;
    gap: 80px;
    margin: 0;
}

.konkurs-intro .element {
    width: 100%;
    max-width: 160px;
}

.konkurs-intro .big-text {
    color: var(--grey-text-white);
    width: 100%;
    max-width: 1900px;
    border-bottom: 0.5px solid var(--pink-bg-light);
    padding: 64px 0;
    margin: 0;
}

/* СТРАНИЦА КОНКУРСА > РЕЗУЛЬТАТЫ ——— */
.summary {
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 100vw;
    width: 100%;
    border-top: 0.5px solid var(--grey-text-light);
    background: var(--pink-bg-white);
    padding: 96px 64px 120px 64px;
    margin: 0;
    scroll-margin-top: 64px;
}

.summary .inner {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    max-width: 1900px;
    width: 100%;
    gap: 80px;
    margin: 0;
}

.summary .inner h1 {
    color: var(--grey-text-main);
    font-size: var(--fz-64);
    font-weight: 500;
    line-height: 112%;
    text-align: center;
    max-width: none;
    padding-bottom: 8px;
    margin: 0;
}

.summary .inner .main-info {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-width: fit-content;
    max-width: fit-content;
    width: 100%;
    gap: 40px;
    padding-bottom: 12px;
    margin: 0;
}

.summary .inner .main-info .text-info {
    display: flex;
    flex-direction: row;
    align-items: center;
    min-width: fit-content;
    max-width: fit-content;
    width: 100%;
    gap: 64px;
    margin: 0;
}

.summary .inner .main-info .text-info .key-info {
    display: flex;
    flex-direction: column;
    align-items: center;
    flex: 1 0 0;
    min-width: fit-content;
    max-width: fit-content;
    width: 100%;
    gap: 8px;
    margin: 0; 
}

.summary .inner .main-info .text-info .key-info h2 {
    font-size: 85px;
    font-weight: 500;
    line-height: 108%;
    letter-spacing: -0.75px;
    text-align: center;
    color: var(--pink-accent-dark);
}

.summary .inner .main-info .text-info .key-info .paragraph {
    color: var(--pink-accent-dark);
}

.summary .inner .subheading-3 {
    text-align: center;
    max-width: 720px;
    font-weight: 400;
    line-height: 120%;
}

.summary .inner .main-info p {
    text-align: center;
}

.summary .inner .card-list {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    max-width: 1200px;
    width: 100%;
    padding: 0 16px;
    margin: 0;
}

.summary .inner .card-list .result-header {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    margin: 0;
}

.summary .inner .card-list .subheading-4 {
    font-weight: 450;
    text-align: center;
    letter-spacing: -0.5px;
    line-height: 120%;
    padding: 16px;
}

.summary .inner .card-list .info-card {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    background: var(--pink-bg-light);
    padding: 20px 16px;
    margin: 0;
}

.summary .inner .card-list .info-card {
    border-top: 1px solid var(--grey-text-super-light);
}

.summary .inner .card-list .info-card--top {
    border: none;
}

.summary .inner .card-list .info-card .inner {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    flex-wrap: nowrap;
    width: 100%;
    gap: 16px 40px;
    margin: 0;
}

.summary .inner .card-list .info-card .inner .text-info {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    flex: 1 0 0;
    width: 100%;
    max-width: none;
    gap: 0;
    margin: 0;
}

.summary .inner .info-card .title {
    display: none;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    gap: 4px;
    width: 100%;
    margin: 0;
}

.summary .inner .info-card .subheading-3 {
    text-align: left;
    font-weight: 450;
    padding-bottom: 4px;
}

.summary .inner .info-card .paragraph--secondary {
    color: var(--grey-text-light);
    padding: 0 0 2px 1px;
}

.summary .inner .info-card .number {
    display: flex;
    justify-content: flex-end;
    flex: 1 0 0;
    width: 100%;
    height: fit-content;
    max-width: 180px;
    font-family: var(--main-font);
    font-size: 67px;
    font-weight: 400;
    line-height: 85%;
    letter-spacing: -1px;
    text-align: right;
    color: var(--grey-text-main);
    margin: 4px 2px 0 0;
}

.summary .inner .card-list .secondary-info {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 24px;
    padding: 80px 0 88px 0;
    margin: 0;
}

.summary .inner .card-list .subheading-3--secondary {
    max-width: 800px;
    color: var(--pink-accent-dark);
}

.summary .inner .card-list .subheading-4--secondary {
    max-width: 640px;
    padding: 0;
}

.summary .inner .card-list .paragraph--tetryary {
    line-height: 140%;
    text-align: center;
    max-width: 720px;
}

.summary .inner .card-list .info-card--bottom {
    border: none;
}

.summary .inner .card-list .info-card--bottom p {
    color: var(--grey-text-light);
}

.summary .inner .CTA {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 48px;
    margin: 0;
}

.summary .inner .button {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 56px;
    width: 100%;
    max-width: 400px;
    padding: 10px 40px;
    gap: 12px;
    background: var(--pink-accent-dark);
    color: var(--pink-text-white);
    font-family: var(--heading-font);
    font-size: var(--fz-12);
    font-weight: 400;
    line-height: 105%;
    text-transform: uppercase;
    text-decoration: none;
    margin: 0;
}

.summary .inner .button:hover {
    background: var(--pink-bg-black);
    color: var(--pink-text-white);
    border: none;
}

.summary .inner .button:active {
    background: var(--pink-bg-super-dark);
    transform: scale(0.97); /* лёгкое сжатие при нажатии */
    transition: transform 0.05s ease;
}

/* --- СТРАНИЦА КОНКУРСА > ОСНОВНЫЕ ЗАДАЧИ --- */
.primary-info {
    display: flex;
    align-items: center;
    min-width: 0;
    max-width: 100vw;
    width: 100%;
    background: var(--grey-bg-main);
    padding: 56px 64px 64px 64px;
    margin: 0;
}

.primary-info .inner {
    display: flex;
    flex-direction: column;
    justify-content: center;
    max-width: 1900px;
    min-width: 0;
    width: 100%;
    height: 100%;
    gap: 128px;
    margin: 0;
}

.primary-info h1 {
    color: var(--grey-text-main);
    font-size: var(--fz-64);
    font-weight: 500;
    line-height: 112%; /* 71px */
    max-width: 836px;
    padding-bottom: 8px;
    margin: 0;
}

.primary-info h3 {
    color: var(--grey-text-main);
    font-size: var(--fz-32);
    font-weight: 450;
    line-height: 125%; /* 40px */
    letter-spacing: -0.64px;
    max-width: 836px;
    margin: 0;
}

.primary-info .main-tasks {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between;
    border-top: 0.5px solid var(--grey-text-light);
    max-width: 100vw;
    min-width: 0;
    width: 100%;
    gap: 128px;
    padding: 40px 0 24px 0;
    margin: 0;
}

.primary-info .main-tasks .key-info {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: stretch;
    flex-wrap: nowrap;
    gap: 80px;
    width: 100%;
    margin: 0;  
}

.primary-info .main-tasks img {
    display: block;
    flex: 1 1 0px;
    min-width: 360px;
    max-width: 480px;
    width: 100%;
    object-fit: contain;
    padding-right: 40px;
    margin-top: 20px;
    margin-right: auto;
}

.primary-info .main-tasks .card-list {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    flex: 1 1 0px;
    min-width: 576px;
    max-width: 956px;
    gap: 20px;
    margin: 0;
}

.primary-info .main-tasks .info-card {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    width: 100%;
    max-width: 956px;
    gap: 32px;
    padding: 20px 20px 20px 0;
    margin: 0;
}

.primary-info .main-tasks .info-card .number {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    max-width: 82px;
    margin: 0;
}

.primary-info .main-tasks .info-card .text-info {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    width: 100%;
    max-width: 800px;
    gap: 4px;
    padding-top: 5px;
}

.primary-info .main-tasks .info-card .number p {
    font-family: var(--main-font);
    font-size: 152px;
    font-weight: 450;
    line-height: 1;
    letter-spacing: -2px;
    text-align: center;
    color: var(--grey-bg-main);
    -webkit-text-stroke-width: 1px;
    -webkit-text-stroke-color: var(--grey-text-light);
    margin: 0;
}

.primary-info .main-tasks .info-card p {
    color: var(--grey-text-main);
    padding-left: 1px;
}

/* --- СТРАНИЦА КОНКУРСА > ЦЕЛИ --- */
.primary-info .target {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-end;
    border-top: 0.5px solid var(--grey-text-light);
    max-width: 100vw;
    min-width: 0;
    width: 100%;
    gap: 96px;
    padding: 96px 0 64px 0;
    margin: 0;
}

.primary-info .target .key-info {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    border-top: 0.5px solid var(--grey-text-light);
    gap: 80px;
    padding: 16px 0 0 0;
    margin: 0;  
}

.primary-info .target h3 {
    max-width: 836px;
}

.primary-info .target .info-list {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-end;
    max-width: 956px;
    gap: 24px;
    padding: 0;
    margin-left: auto; 
}

.primary-info .target .info-list ul.body {
    display: flex;
    flex-direction: column;
    gap: 20px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.primary-info .target .info-list ul.body li {
    position: relative;
    font-family: var(--main-font);
    font-size: 32px;
    font-style: normal;
    font-weight: 400;
    line-height: 125%; /* 40px */
    letter-spacing: -0.64px;
    color: var(--grey-text-main);
    text-align: left;
    margin: 0;
    padding-left: 20px;
}

.primary-info .target .info-list ul.body li::before {
    content: "•";
    position: absolute;
    left: 0;
    top: 2px;
    font-size: var(--fz-32);
    color: var(--pink-accent-dark);
}

.primary-info .target .element-gallery {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: stretch;
    flex-wrap: nowrap;
    width: 100%;
    gap: 96px;
    padding: 24px 0 0 0;
    margin: 0;
}

.primary-info .target .element-gallery img {
    display: block;
    flex: 1 1 160px;
    min-width: 160px;
    max-width: 288px;
    width: 100%;
}

/* --- СТРАНИЦА КОНКУРСА > КОМИССИЯ --- */
.primary-info .comission {
    display: flex;
    align-items: center;
    min-width: 0;
    width: 100%;
    border-top: 0.5px solid var(--grey-text-light);
    padding: 16px 0 64px 0;
    margin: 0;
}

.primary-info .comission .inner {
    display: flex;
    flex-direction: column;
    justify-content: center;
    max-width: 1900px;
    min-width: 0;
    width: 100%;
    height: 100%;
    gap: 128px;
    margin: 0;
}

.primary-info .comission h1 {
    color: var(--grey-text-main);
    font-size: var(--fz-64);
    font-weight: 500;
    line-height: 112%; /* 71px */
    max-width: none;
    margin-bottom: 8px;
}

.primary-info .comission .main-info {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: space-between;
    gap: 64px;
    margin: 0;
}

.primary-info .comission .info-list {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    width: 100%;
    gap: 48px;
    padding-bottom: 32px;
    margin: 0;
}

.primary-info .comission .info-list .info-card {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    justify-content: space-between;
    width: 100%;
    min-height: 80px;
    border-top: 0.5px solid var(--grey-text-light);
    gap: 80px;
    padding: 16px 0;
    margin: 0;
}

.primary-info .comission .info-list h4 {
    font-weight: 450;
    line-height: 125%; /* 40px */
    letter-spacing: -0.5px;
    max-width: 836px;
    min-width: 320px;
    padding: 4px 0;
    flex: 1 0 0;
}

.primary-info .comission .text-info {
    display: flex;
    flex-direction: column;
    gap: 32px;
    margin: 0;
}

.primary-info .comission .info-list .key-info {
    display: flex;
    flex-direction: column;
    max-width: 836px;
    gap: 8px;
    margin: 0;
}

.primary-info .comission .info-list p {
    font-family: var(--main-font);
    font-size: 24px;
    font-style: normal;
    font-weight: 350;
    line-height: 125%; /* 40px */
    letter-spacing: -0.5px;
    color: var(--grey-text-main);
    text-align: left;
    margin: 0;
}

/* кнопки */
.primary-info .comission .button {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 56px;
    width: 100%;
    max-width: 480px;
    padding: 10px 40px;
    gap: 12px;
    background: var(--pink-accent-dark);
    color: var(--pink-text-white);
    font-family: var(--heading-font);
    font-size: var(--fz-12);
    font-weight: 400;
    line-height: 105%; /* 12.6px */
    text-transform: uppercase;
    text-decoration: none;
    margin: auto;
}

.primary-info .comission .button:hover {
    background: var(--pink-bg-black);
    color: var(--pink-text-white);
    border: none;
}

.primary-info .comission .button:active {
    background: var(--pink-bg-super-dark);
    transform: scale(0.97); /* лёгкое сжатие при нажатии */
    transition: transform 0.05s ease;
}

/* --- СТРАНИЦА КОНКУРСА > УСЛОВИЯ УЧАСТИЯ --- */
.participation-terms {
    display: flex;
    align-items: center;
    min-width: 0;
    width: 100%;
    background: var(--pink-bg-white);
    padding: 80px 64px 56px 64px;
    margin: 0;
}

.participation-terms .inner {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    max-width: 1900px;
    min-width: 0;
    width: 100%;
    height: 100%;
    gap: 192px;
    margin: 0;
}

.participation-terms h1 {
    font-size: var(--fz-64);
    font-weight: 500;
    line-height: 112%; /* 71px */
    color: var(--pink-text-black);
    display: flex;
    flex: 1 0 0;
    flex-wrap: wrap;
    width: 100%;
    max-width: 692px;
    margin-bottom: 8px;
}

.participation-terms h2 {
    color: var(--pink-text-black);
    font-size: var(--fz-48);
    font-weight: 450;
    line-height: 108%; /* 52px */
    letter-spacing: -0.8px;
}

.participation-terms h3 {
    color: var(--pink-text-black);
    font-size: var(--fz-32);
    font-weight: 450;
    line-height: 125%; /* 40px */
    letter-spacing: -0.5px;
    max-width: 836px;
    min-width: 320px;
    flex: 1 0 0;
}

.participation-terms p {
    color: var(--pink-text-black);
    width: 100%;
    max-width: 836px;
    margin: 0;
}

.participation-terms .lead-1 {
    color: var(--pink-text-black);
}

.participation-terms .key-info {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
    width: 100%;
    flex: 1 0 0;
    gap: 80px 128px;
    flex-wrap: wrap;
    margin: 0;
}

.participation-terms .key-info .info-list {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    max-width: 836px;
    padding-top: 16px;
    gap: 48px;
    margin: 0;
}

.participation-terms .key-info .text-info {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    gap: 8px;
    margin: 0;
}

.participation-terms .secondary-info {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    margin: 0;
}

.participation-terms .secondary-info .text-info {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
    border-top: 0.5px solid var(--grey-text-super-light);
    gap: 80px;
    width: 100%;
    min-height: 112px;
    padding: 16px 0;
    margin: 0;
}

.participation-terms .secondary-info .text-info p {
    max-width: 836px;
}

/* --- СТРАНИЦА КОНКУРСА > ПАРТНЁРЫ --- */
.partners {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    min-width: 0;
    width: 100%;
    gap: 64px;
    background-image: url("../img/bg/pattern/struckaxiom-dark-bg.png");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    border-top: 0.5px solid var(--grey-text-super-light);
    padding: 64px 64px 72px 64px;
    margin: 0;
}

.partners .inner {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    max-width: 1900px;
    min-width: 0;
    width: 100%;
    height: 100%;
    gap: 64px;
    margin: 0;
}

.partners h1 {
    font-size: var(--fz-64);
    font-weight: 500;
    line-height: 112%; /* 71px */
    color: var(--grey-text-white);
    width: 100%;
    padding-bottom: 8px;
    margin: 0;
}

.partners .lead-1 {
    color: var(--grey-text-white);
}

.partners .card-gallery {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 100px 80px;
    flex-wrap: wrap;
    max-width: 1600px;
    margin: 0;
}

.partner-card {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    flex: 1 1 512px;
    min-width: 512px;
    max-width: 836px;
    gap: 40px;
    padding: 20px 40px 32px 0;
    margin: 0;
}

.partner-card img {
    max-width: 128px;
    aspect-ratio: 1/1;
}

/* --- СТРАНИЦА КОНКУРСА > ОСНОВНАЯ ИНФА --- */
.contact-info {
    display: flex;
    align-items: center;
    min-width: 0;
    width: 100%;
    background: var(--pink-bg-white);
    padding: 56px 64px 64px 64px;
    margin: 0;
}

.contact-info .inner {
    display: flex;
    flex-direction: column;
    justify-content: center;
    max-width: 1900px;
    min-width: 0;
    width: 100%;
    height: 100%;
    gap: 128px;
    margin: 0;
}

.contact-info h1 {
    color: var(--grey-text-main);
    font-size: var(--fz-64);
    font-weight: 500;
    line-height: 112%; /* 71px */
    max-width: 836px;
    margin-bottom: 8px;
}

.contact-info .konkurs-info {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    justify-content: space-between;
    flex-wrap: wrap;
    max-width: 1900px;
    min-width: 0;
    width: 100%;
    gap: 64px 96px;
    margin: 0;
}

.contact-info .konkurs-info h3 {
    color: var(--grey-text-main);
}

.contact-info .konkurs-info .lead-1 p,
.contact-info .konkurs-info .lead-1 a {
    color: var(--grey-text-main);
    text-decoration: none;
}

.contact-info .konkurs-info .contacts {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    flex: 1 0 480px;
    min-width: 480px;
    max-width: 580px;
    width: 100%;
    gap: 40px;
    margin: 0;
}

.contact-info .konkurs-info .email-info {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    width: 100%;
    min-height: 56px;
    max-width: fit-content;
    margin: 0;
}

.contact-info .konkurs-info .email-info img {
    height: 40px;
    aspect-ratio: 1/1;
    object-fit: contain; /* чтобы изображение не искажалось */
    margin: 0;
}

.contact-info .konkurs-info .cta {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
    flex: 1 0 576px;
    min-width: 576px;
    max-width: 836px;
    gap: 40px;
    margin-left: 0;
}

/* кнопки */
.konkurs-info .button-wrapper {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    justify-content: space-between;
    flex-wrap: wrap;
    width: 100%;
    max-width: 836px;
    gap: 2px;
    margin: 0;
}

.konkurs-info .button,
.konkurs-info .button-secondary {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 56px;
    width: 100%;
    flex: 1 0 340px;
    min-width: 340px;
    max-width: 640px;
    padding: 10px 40px;
    gap: 12px;
    background: var(--pink-accent-dark);
    color: var(--pink-text-white);
    font-family: var(--heading-font);
    font-size: var(--fz-12);
    font-weight: 400;
    line-height: 105%; /* 12.6px */
    text-transform: uppercase;
    text-decoration: none;
}

.konkurs-info .button-secondary {
    background: none;
    border: 1px solid var(--pink-accent-dark);
    color: var(--pink-accent-dark);
}

.konkurs-info .button:hover,
.konkurs-info .button-secondary:hover {
    background: var(--pink-bg-black);
    color: var(--pink-text-white);
    border: none;
}

.konkurs-info .button:active,
.konkurs-info .button-secondary:active {
    background: var(--pink-bg-super-dark);
    transform: scale(0.97); /* лёгкое сжатие при нажатии */
    transition: transform 0.05s ease;
}

/* --- СТРАНИЦА КОНКУРСА > ФУТЕР --- */
footer.wide-footer {
    display: flex;
    flex-direction: column;
    align-items: center;
    min-width: 0;
    width: 100%;
    padding: 24px 64px 48px 64px;
    margin: 0;
}

footer.wide-footer .inner {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    max-width: 1900px;
    min-width: 0;
    width: 100%;
    padding: 0;
    margin: 0;
}

footer.wide-footer .footer-branding {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    padding: 24px 0 56px 0;
    width: 100%;
    margin: 0;
}

footer.wide-footer img.logo {
    display: block;
    width: 64px;
    height: auto;
    aspect-ratio: 1/1;
    margin: 8px 0 0 4px;
    object-fit: contain; /* чтобы изображение не искажалось */
    transition: transform 0.5s ease;
}

footer.wide-footer .text-info {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: flex-start;
    width: 100%;
    max-width: 420px;
    gap: 4px;
    padding-top: 8px;
    margin: 0;
}

footer.wide-footer .brand-name {
    font-family: var(--main-font);
    font-size: var(--fz-24);
    color: var(--grey-text-white);
    font-weight: 500;
    line-height: 104%; /* 41.6px */
    letter-spacing: -0.4px;
    text-transform: uppercase;
    margin: 0;
}

footer.wide-footer .paragraph {
    font-family: var(--main-font);
    font-size: var(--fz-16);
    color: var(--grey-text-light);
    margin-left: 2px;
    text-wrap: wrap;
    margin: 0;
}

footer.wide-footer .text-info h4,
footer.wide-footer .text-info p {
    max-width: 720px;
    margin: 0;
    color: var(--grey-text-super-light);
}

footer.wide-footer .footer-meta {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
    max-width: 1900px;
    min-width: 0;
    width: 100%;
    padding: 48px 0;
    border-top: 0.5px solid var(--grey-text-super-light);
    margin: 0;
}

footer.wide-footer .footer-meta .inner {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
    width: 100%;
    padding: 0;
    margin: 0;
}

footer.wide-footer .footer-meta .social {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    width: 100%;
    max-width: 480px;
    gap: 32px;
    margin: 0;
}

footer.wide-footer .footer-meta .social .title {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 10px;
    margin-bottom: 4px;
}

footer.wide-footer h4 {
    font-size: var(--fz-24);
    font-weight: 450;
    line-height: 115%; /* 28px */
    letter-spacing: -0.5px;
    color: var(--grey-text-super-light);
    max-width: 240px;
    padding-left: 2px;
    margin: 0;
}

footer.wide-footer .footer-meta p {
    color: var(--grey-text-super-light);
    line-height: 140%; /* 19.8px */
}

footer.wide-footer .footer-meta .title a {
    display: flex;
    height: 36px;
    aspect-ratio: 1/1;
    object-fit: contain; /* чтобы изображение не искажалось */
    margin: 0;
}

footer.wide-footer .footer-meta .social img.qr-code {
    display: block;
    height: 120px;
    width: fit-content;
    object-fit: contain;
    aspect-ratio: 1/1;
    margin: 0;
}

footer.wide-footer .footer-meta .text-info {
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: 590px;
    gap: 12px;
    padding-top: 4px;
    margin-left: auto;
}

/* COMPONENTS —— LIGHTBOX */
.lightbox {
    position: fixed;
    inset: 0;
    width: 100%;
    max-width: 1400px;
    height: fit-content;
    max-height: calc(100vh - 128px);
    border: none;
    background: transparent;
    padding: 0;
    overflow: visible;
    margin-inline: auto;
}

.lightbox[open] {
    display: block;
}

.lightbox::backdrop {
    background: var(--grey-bg-super-dark);
    opacity: 0.92;
    backdrop-filter: blur(6px);
}

.lightbox__dialog {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    width: fit-content;
    max-width: calc(100vw - 160px);
    max-height: calc(100vh - 128px);
    gap: var(--gallery-gap-s);
    margin-inline: auto;
}

.lightbox__media {
    display: flex;
    align-items: center;
    justify-content: center;
    width: fit-content;
    max-width: 100%;
    max-height: calc(100vh - 256px);
    overflow: hidden;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.15);
}

.lightbox__media img {
    display: block;
    width: auto;
    max-width: 100%;
    max-height: calc(100vh - 256px);
    object-fit: contain;
}

.lightbox__thumbs {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 12px;
    width: min(100vw - 128px, 100%);
    overflow-x: auto;
    overflow-y: hidden;
    overscroll-behavior-x: contain;
    overscroll-behavior-y: none;
    scrollbar-width: none;
    -ms-overflow-style: none;
    padding: 0 4px;
}

.lightbox__thumbs::-webkit-scrollbar {
    display: none;
}

.lightbox__thumb {
    flex: 0 0 auto;
    width: 96px;
    height: 96px;
    padding: 0;
    border: var(--border-width-m) solid transparent;
    background: none;
    cursor: pointer;
    opacity: 0.75;
    transition:
        opacity 0.2s ease,
        border-color 0.2s ease,
        transform 0.2s ease;
}

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

.lightbox__thumb:hover,
.lightbox__thumb:focus-visible {
    opacity: 1;
}

.lightbox__thumb.is-active {
    opacity: 1;
    border-color: var(--pink-accent-dark);
}

.lightbox__close,
.lightbox__nav {
    position: absolute;
    z-index: 3;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: var(--btn-height-l);
    height: var(--btn-height-l);
    border: none;
    background: none;
    cursor: pointer;
    transform: none;
    transition:
        opacity 180ms ease;
}

.lightbox__close {
    top: calc(var(--btn-height-l) * -0.5);
    right: calc(var(--btn-height-l) * -1);
}

.lightbox__nav {
    top: 45%;
    transform: translateY(-44%);
}

.lightbox__nav--prev {
    left: calc(var(--btn-height-l) * -1);
}

.lightbox__nav--next {
    right: calc(var(--btn-height-l) * -1);
}

.lightbox__nav:hover,
.lightbox__close:hover {
    border: 1px solid var(--grey-text-light);
}

@media (max-width: 1408px) {
    .main-job-with-us .job-opportunities .element-gallery {
        flex: 0 1 800px;
    }

    .main-job-with-us .job-opportunities .CTA {
        padding: 0;
    }
} 

@media (max-width: 1279.9px) {
    :root {
        --font-size-h1: 48px;
        --font-size-h2: 32px;
        --font-size-h3: 24px;
        --font-size-h4: 19px;
        --font-size-h5: 15px;
        --font-size-year: 56px;
        --font-size-metric: 48px;
        --font-size-item-number: 49px;
        --font-size-item-scale: 17px;
        --font-size-sh1: 40px;
        --font-size-sh2: 32px;
        --font-size-sh3: 24px;
        --font-size-sh4: 20px;
        --font-size-lead: 20px;
        --font-size-paragraph: 15px;
        --font-size-subtext: 12px;
        --font-size-btn: 12px;

        --nav-icon-width: 28px;
    }

/*  ADAPTIVE —— TYPOGRAPHY | MEDIUM */
    .link-main {
        text-underline-offset: var(--link-main-underline-gap-m);
    }

/*  ГЛАВНАЯ > ХИРО БЛОК ——— medium */
    .hero {
        max-width: 1279.9px;
        height: 640px;
        margin-top: var(--header-height-m);
    }

    .hero .inner {
        max-width: fit-content;
        padding-left: 32px;
    }

    .hero .key-info {
        gap: 12px;
        padding-bottom: 8px;
    }

    .hero img.logo {
        width: 96px;
        min-width: 96px;
        margin: 0 2px 0 0;
    }

    .hero .divider-wrapper {
        display: flex;
        flex-direction: column;
        align-items: center;
        height: 108px;
        padding: 13px 0px 0px 0px;
    }

    .hero .text-info {
        max-width: min-content;
        padding-top: 12px;
    }

    .hero h1 {
        font-size: 26px;
        line-height: 104%; /* 41.6px */
        letter-spacing: -0.78px;
    }

    .hero p {
        font-size: var(--fz-14);
        padding-left: 1px;
    }

    .hero .subtext {
        font-size: var(--fz-12);
    }

/*  ADAPTIVE -- ИНТРО БЛОК */
    .intro {
        gap: 0;
        padding: 72px 40px 80px 40px;
    }

    .intro h1 {
        font-size: var(--fz-48);
        line-height: 108%; /* 51.84px */
        letter-spacing: -0.5px;
        max-width: 960px;
        width: 100%;
        padding-bottom: 4px;
    }

    .intro p {
        font-size: var(--fz-24);
        font-weight: 400;
        line-height: 128%; /* 30.72px */
        letter-spacing: -0.25px;
    }

    .intro .inner {
        max-width: 1280px;
        gap: 32px;
    }

    .intro .text-block {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        width: 100%;
        max-width: 960px;
        gap: 40px;
        padding-bottom: 20px;
    }

    .intro img.arrow-inside {
        width: 40px;
    }

/*  ADAPTIVE -- ALL PROJECTS —— medium */
    .projects {
        padding-bottom: 96px;
    }

    .projects .inner {
        max-width: var(--container-width-med);
        gap: var(--container-inner-gap-m);
        padding: 64px 40px 0;
    }

    .projects-panel {
        gap: var(--container-gap-m);
        padding-top: var(--content-padding-top-m);
    }

/*  ADAPTIVE -- ALL PROJECTS —— FILTER */
    .projects-filter-status {
        gap: var(--text-info-gap-m);
        padding-top: var(--text-info-padding-m);
    }

    .project-card {
        grid-template-columns:
            minmax(0, var(--image-width-med))
            minmax(0, var(--cta-width-med));
        gap:
            calc(var(--card-gap-l) / 2)
            var(--card-gap-l);
    }

    .project-card__key-info {
        gap: calc(var(--card-gap-m) - var(--space-4));
        padding-bottom: var(--space-2);
    }

    .project-card__cta {
        gap: var(--card-gap-m);
    }

    .project-card__text-info {
        gap: var(--text-info-gap-l);
    }

    .project-card__text-info .paragraph {
        padding-left: 1px;
    }

    .project-card__facts {
        padding-left: 0;
    }

    .project-card__fact {
        gap: calc(var(--space-8) - var(--space-2));
        padding-top: var(--text-block-padding-l);
    }

/*  ADAPTIVE -- NEWS -- MEDIUM */
    .news {
        padding: 80px 32px;
    }

    .news .inner,
    .news-slider {
        gap: 40px;
    }

    .news-item {
        flex: 0 0 clamp(400px, 40vw, 560px);
        min-width: 400px;
        max-width: 560px;
    }

/* ADAPTIVE -- NEWS -- CARD */
    .news-card {
        padding: 24px;
    }

    .news-card__cover {
        height: 320px;
    }

/* ADAPTIVE -- NEWS MODAL -- MEDIUM */
    .news-modal {
        width: min(760px, calc(100vw - 32px));
        max-height: calc(100vh - 32px);
    }

    .news-modal__body {
        max-height: calc(100vh - 32px);
        padding: 40px;
    }

/*  О НАС ——— */
    .about-us {
        gap: 80px;
        padding: 56px 0 104px 0;
    }

    .about-us .work-direction,
    .about-us .our-target,
    .about-us .our-principles {
        scroll-margin-top: 48px;
    }

/*  О НАС > НАПРАВЛЕНИЯ ДЕЯТЕЛЬНОСТИ ——— medium */
    .about-us .work-direction {
        padding: 0 40px;
    }

    .about-us .work-direction .inner {
        flex-wrap: wrap;
        gap: 96px;
    }

    .about-us .work-direction .main-info {
        max-width: 1280px;
        gap: 80px;
        flex-wrap: wrap;
    }

    .about-us .work-direction h2 {
        font-size: var(--fz-32);
        line-height: 112%;
        letter-spacing: -0.5px;
        flex: 1 0 280px;
        padding-top: 12px;
    }

    .about-us .work-direction .main-info .list {
        flex: 1 0 480px;
        min-width: 480px;
        max-width: 920px;
    }

    .about-us .work-direction .main-info .list .subheading-5 {
        font-size: var(--fz-18);
        letter-spacing: -0.5px;
    }

/*  О НАС > НАПРАВЛЕНИЯ ДЕЯТЕЛЬНОСТИ ——— medium > список */
    .about-us .work-direction-item-first .content-wrapper,
    .about-us .work-direction-item .content-wrapper {
        gap: 32px;
        padding: 16px 0;
    }

    .about-us .work-direction-icon img {
        width: 32px;
        height: 32px;
        margin-right: 2px;
    }

    .about-us .work-direction-item-first .wd-key-info,
    .about-us .work-direction-item .wd-key-info {
        gap: 16px;
        padding: 0 12px 24px 12px;
    }

    .about-us .work-direction-item-first .wd-key-info .secondary-info,
    .about-us .work-direction-item .wd-key-info .secondary-info {
        gap: 12px;
        padding-top: 4px;
    }

    .about-us .work-direction-item-first .wd-key-info .secondary-info {
        flex: 1 0 0;
        min-width: 152px;
        max-width: 220px;
    }

    .about-us .work-direction-item-first .wd-key-info .secondary-info .text-info,
    .about-us .work-direction-item .wd-key-info .secondary-info .text-info {
        border-left: 1px solid var(--grey-text-main);
        gap: 2px;
        padding: 0 0 2px 8px;
    }

    .about-us .work-direction-item-first .wd-key-info .secondary-info h6,
    .about-us .work-direction-item .wd-key-info .secondary-info h6 {
        font-size: var(--fz-10);
        line-height: 120%;
    }

    .about-us .work-direction-item-first .wd-key-info .secondary-info p,
    .about-us .work-direction-item .wd-key-info .secondary-info p {
        font-size: var(--fz-10);
    }

    .about-us .work-direction-item-first .wd-key-info .text-block,
    .about-us .work-direction-item .wd-key-info .text-block {
        flex: 1 0 0;
        min-width: 280px;
        max-width: 400px;
        gap: 12px;
        padding: 4px 0 0 10px;
        margin-right: 32px;
    }

    .about-us .work-direction-item .wd-key-info .text-block {
        max-width: 92%;
    }

    .about-us .work-direction-item-first .wd-key-info p,
    .about-us .work-direction-item .wd-key-info p {
        font-size: var(--fz-13);
        line-height: 128%;
    }

/*  О НАС > НАША ЦЕЛЬ ——— */
    .about-us .our-target .inner {
        gap: 48px;
        padding: 80px 40px;
        max-width: 1280px;
    }

    .about-us .our-target .title {
        align-items: center;
        gap: 40px;
    }

    .about-us .our-target .text-block {
        max-width: 960px;
        gap: 40px;
    }

    .about-us .our-target h2 { 
        font-size: var(--fz-32);
        line-height: 112%; /* 36px */
        letter-spacing: -0.5px;
    }

    .about-us .our-target h3 { 
        font-size: var(--fz-24);
        line-height: 115%; /* 27.6px */
        max-width: 640px;
    }

    .about-us .our-target p { 
        font-size: var(--fz-24);
        font-weight: 350;
        line-height: 128%; /* 31px */
        letter-spacing: -0.25px;
        max-width: 850px;
    }

    .about-us .our-target img.arrow-inside {
        width: 40px;
    }

/*  О НАС > НАШИ ПРИНЦИПЫ ——— */
    .about-us .our-principles {
        padding: 0 40px;
        gap: 64px;
    }

    .about-us .our-principles h2 { 
        font-size: var(--fz-32);
        line-height: 112%; /* 36px */
        letter-spacing: -0.5px;
    }

    .about-us .our-principles .inner {
        max-width: 1200px;
    }

    .about-us .our-principles .element {
        flex: 0 0 152px;
    }

    .about-us .our-principles .info-card {
        flex: 1 1 480px;
        min-width: 480px;
        max-width: 878px;
        height: 152px;
        gap: 24px;
        padding: 16px 32px 16px 16px;
    }

    .about-us .our-principles .number {
        width: 48px;
        min-width: 48px;
        max-width: 48px;
    }

    .about-us .our-principles .text-info {
        max-width: 800px;
        gap: 6px;
        padding-top: 8px;
    }

    .about-us .our-principles .number p {
        font-size: 87px;
    }

    .about-us .our-principles h3 {
        font-size: var(--fz-18);
        line-height: 112%; /* 20px */
        letter-spacing: -0.25px;
    }

    .about-us .our-principles p {
        font-size: var(--fz-16);
        line-height: 135%; /* 20.25px */
        letter-spacing: -0.25px;
        padding-right: 40px;
    }

/*  КОМАНДА ——— medium */
    .team {
        padding: 48px 40px 96px 40px;
    }

    .team .inner {
        flex-wrap: wrap;
        max-width: 1200px;
        gap: 64px 0;
    }

    .team .inner .title {
        min-width: 360px;
        max-width: 960px;
        row-gap: 48px;
        padding-right: 24px;
    }

    .team .inner .title h1 {
        font-size: var(--fz-48);
        line-height: 108%;
        letter-spacing: -1px;
        padding-bottom: 4px;
    }

    .team .inner .title img {
        width: 80px;
    }

    .team .inner .text-info {
        min-width: 480px;
        max-width: 960px;
        padding-top: 6px;
        padding-left: 24px;
        gap: 160px;
    }

    .team .subheading-2 {
        font-size: var(--fz-32);
        line-height: 115%; /* 37px */
        letter-spacing: -0.25px;
    }

    .team .paragraph {
        padding-right: 12px;
    }

    .team .inner .secondary-info {
        --team-image-radius: 112px;
    }

    .team .inner .secondary-info .main-img {
        max-width: var(--content-width-med);
    }

    .team .inner .secondary-info .ident {
        max-width: 80px;
    }

/*  МЕСТО РАБОТЫ ——— */
    .work-place {
        padding: 56px 40px 112px 40px;
    }

    .work-place .inner {
        max-width: 1200px;
        gap: 120px;
    }

    .work-place .main-info {
        gap: 48px;
        margin-bottom: 8px;
    }

    .work-place .main-info .subheading-2 {
        font-size: var(--fz-32);
        line-height: 115%; /* 36px */
        letter-spacing: -0.5px;
    }

    .work-place .main-info .text-info {
        gap: 40px;
        padding: 0;
        margin-right: 40px;
    }

    .work-place .main-info .lead-3 {
        font-size: var(--fz-16);
        font-weight: 350;
        line-height: 135%; /* 20px */
        letter-spacing: -0.25px;
    }

    .work-place .secondary-info {
        flex-wrap: wrap;
        gap: 48px 40px;
    }

    .work-place .secondary-info img {
        flex: 1 0 600px;
        min-width: 600px;
        max-width: 1040px;
        height: 432px;
    }

    .work-place .secondary-info .card-list {
        flex: 1 0 360px;
        min-width: 360px;
        max-width: 1040px;
        height: 100%;
    }

    .work-place .secondary-info .subheading-1 {
        font-size: 44px;
        font-weight: 400;
        line-height: 100%; /* 44px */
        letter-spacing: -1px;
    }

    .work-place .secondary-info .paragraph {
        font-size: var(--fz-14);
        font-weight: 350;
        line-height: 135%; /* 17px */
        letter-spacing: -0.25px;
        max-width: 640px;
    }

    .work-place .secondary-info .info-card,
    .work-place .secondary-info .info-card-top {
        height: 144px;
        padding: 12px 20px 12px 0;
        gap: 10px;
    }

/*  РАБОТА У НАС ——— */
    .work-place .job-opportunities {
        max-height: none;
        padding-top: 12px;
        gap: 48px;
    }

    .work-place .job-opportunities h1 {
        font-size: var(--fz-48);
        line-height: 108%; /* 52px */
        letter-spacing: -1px;
        padding-bottom: 4px;
    }

    .work-place .job-opportunities .key-info {
        align-items: flex-start;
        min-width: 688px;
        max-width: 1200px;
        gap: 40px 40px;
    }

    .work-place .job-opportunities .element-gallery {
        flex: 1 1 504px;
        max-width: 672px;
    }

    .work-place .job-opportunities .element {
        flex: 1 1 156px;
        min-width: 156px;
        max-width: 168px;
    }

    .work-place .job-opportunities .CTA {
        flex: 1 1 544px;
        min-width: 544px;
        max-width: 680px;
        gap: 24px;
        padding: 8px 0 16px 0;
    }

    .work-place .job-opportunities .main-text {
        max-width: 760px;
        gap: 16px;
        margin-bottom: 8px;
    }

    .work-place .job-opportunities h4 {
        line-height: 115%; /* 27px */
    }

    .work-place .job-opportunities p {
        font-size: var(--fz-18);
        line-height: 140%; /* 24px */
        letter-spacing: -0.25px;
        padding: 0;
        margin: 0;
    }

   .work-place .job-opportunities .button {
        font-size: var(--fz-10);
        line-height: 105%; /* 10.6px */
        height: 48px;
        padding: 8px 48px;
    }

/*  ЗАКУПКИ, ПРОТИВОДЕЙСТВИЕ КОРРУПЦИИ ——— medium */
    .hangers {
        margin-top: var(--header-height-m);
        padding: var(--header-height-m) 40px 104px 40px;
    }

    .hangers .inner {
        flex-wrap: wrap;
        max-width: 1200px;
        gap: 80px 0;
    }

    .hangers .intro-info {
        flex-wrap: wrap;
        max-width: 1200px;
        gap: 88px 0;
    }

    .hangers h1 {
        font-size: var(--fz-48);
        line-height: 108%; /* 52px */
        letter-spacing: -1px;
        padding-bottom: 4px;
    }

    .hangers .subheading-2 {
        font-size: var(--fz-32);
        line-height: 115%; /* 37px */
        letter-spacing: -0.25px;
    }

    .hangers .intro-info .paragraph {
        font-size: var(--fz-17);
        padding-right: 12px;
    }

    .hangers .intro-info .key-info {
        flex: 1 0 0;
        min-width: 360px;
        max-width: 960px;
    }

    .hangers .intro-info .key-info img {
        width: 80px;
    }

    .hangers .intro-info .text-info {
        min-width: 552px;
        max-width: 960px;
        padding-top: 6px;
        gap: 160px;
    }

    .hangers .main-info {
        gap: 80px;
    }

    .hangers .main-info .plight {
        max-width: 560px;
        gap: 32px;
        margin-bottom: 16px;
    }

    .hangers .main-info h3 {
        font-size: var(--fz-28);
        line-height: 120%;
    }

    .hangers .main-info h5 {
        font-size: var(--fz-20);
    }

    .hangers .main-info .plight .links-gallery {
        gap: 20px;
    }

    .hangers .main-info .plight .link {
        font-size: var(--fz-15);
        text-underline-offset: 4px;
    }

    .hangers .main-info .plight .CTA {
        gap: 12px;
    }

    .hangers .main-info .plight .subtext {
        font-size: var(--fz-12);
    }

    .hangers .main-info .CTA .button,
    .hangers .key-info .hangers-card .button {
        font-size: var(--fz-12);
        height: 48px;
        gap: 10px;
        min-width: 320px;
    }

    .hangers .main-info .key-info .hangers-card .button img {
        width: 12px;
    }

    .hangers .main-info .key-info {
        max-width: 800px;
        gap: 48px;
    }

    .hangers .main-info .key-info .tab-header {
        gap: 48px;
    }

    .hangers .main-info .key-info .tab-button {
        height: 48px;
        padding: 10px 40px;
        font-size: var(--fz-12);
    }

    .hangers .main-info .key-info .tab-button.is-active {
        box-shadow: 
            0 8px 16px -4px rgba(131,127,135,0.25);
        z-index: 2;
    }

/*  ЗАКУПКИ > КАРТОЧКИ ——— medium */
    .hangers .tab-panel {
        gap: 16px;
    }

    .hangers .hangers-card {
        box-shadow: 0 8px 16px -4px rgba(131,127,135,0.25);
        padding: 20px 24px 24px 24px;
    }

    .hangers .hangers-card .inner {
        gap: 20px;
    }

    .hangers .hangers-card .title-info {
        gap: 16px;
    }

    .hangers .hangers-card h4 {
        font-size: var(--fz-18);
    }

    .hangers .hangers-card .text-info {
        margin-top: -20px;
    }

    .hangers .hangers-card .tables {
        flex-wrap: wrap;
        gap: 32px;
        margin-bottom: 32px;
    }

    .hangers .hangers-card .btn-link {
        max-height: 48px;
        padding: 16px 0;
        text-underline-offset: 4px;
    }

    .hangers .hangers-card .btn-link a {
        font-size: var(--fz-12);
    }

    .hangers .hangers-card .info-table {
        min-width: 320px;
    }

    .hangers .hangers-card .info-table .item {
        padding: 16px 0;
    }

    .hangers .hangers-card .subheading-4,
    .hangers .hangers-card .paragraph {
        font-size: var(--fz-17);
        line-height: 125%;
    }

    .hangers .hangers-card .title .subheading-4 {
        flex: 0 0 176px;
    }

/*  ПРОТИВОДЕЙСТВИЕ КОРРУПЦИИ ——— medium */
    .anticorruption {
        padding: 104px 40px 112px 40px;
    }

    .anticorruption__inner {
        max-width: 800px;
        gap: 56px;
    }

    .anticorruption__title {
        max-width: 360px;
        gap: 6px;
    }

    .anticorruption h3 {
        font-size: var(--fz-28);
        line-height: 110%;
    }

    .anticorruption .subtext{
        font-size: var(--fz-12);
        margin-right: 1px;
    }

    .anticorruption__main-info {
        max-width: 440px;
        gap: 24px;
        padding-top: 7px; 
    }

    .anticorruption h5 {
        font-size: var(--fz-20);
        font-weight: 400;
    }

    .anticorruption__links-gallery {
        gap: 24px;
        margin-bottom: 8px;
    }

    .anticorruption__links-column {
        gap: 12px;
    }

    .anticorruption .link {
        font-size: var(--fz-15);
        text-underline-offset: 4px;
    }

    .anticorruption__CTA {
        gap: 12px;
    }

    .anticorruption__CTA .button {
        font-size: var(--fz-12);
        height: 48px;
        gap: 10px;
        min-width: 320px;
    }

/*  ADAPTIVE —— FOOTER | MEDIUM */
    footer {
        padding: 0 40px;
    }

    footer .inner {
        max-width: 1200px;
        flex-wrap: wrap;
        gap: 144px;
        padding: 40px 0;
    }

/*  ADAPTIVE —— FOOTER-BRANDING | MEDIUM */
    footer .footer-branding .text {
        max-width: 380px;
    }

    .footer-branding .text h4 {
        font-size: var(--fz-22);
        line-height: 112%; /* 23px */
    }

    .footer-branding .text p {
        padding-left: 0.5px;
    }

/*  ADAPTIVE —— FOOTER-INFO | MEDIUM */
    .footer-info .сontact-info {
        min-width: 380px;
        max-width: 380px;
        gap: 24px;
    }

    .footer-info .office,
    .footer-info .сontact-info .contacts,
    .footer-info .сontact-info .social {
        min-width: 240px;
        gap: 44px;
    }

    .footer-info .office {
        min-width: 280px;
        max-width: 468px;
        padding-right: 64px;
    }

    .footer-info .сontact-info .contacts {
        min-width: 170px;
        max-width: 200px;
    }

    .footer-info .сontact-info .social {
        min-width: 148px;
        max-width: 156px;
    }

    .footer-info .text-info {
        gap: 8px;
    }

    .footer-info .social-icons {
        gap: 10px;
        padding-left: 2px;
        margin-top: 8px;
    }

    .footer-info .social-icons a {
        height: 40px;
    }

/*  ADAPTIVE —— FOOTER > META | MEDIUM */
    .footer-meta {
        max-width: 1200px;
        padding: 0 0 32px 0;
    }

    .footer-meta .inner {
        flex-wrap: nowrap;
        gap: 24px;
        padding: 36px 0;
    }

    .footer-meta .key-info {
        flex: 1 0 282px;
        max-width: 282px;
    }

    .footer-meta .curators-info {
        gap: 24px;
    }

    .footer-meta .curators-logo {
        gap: 10px;
        min-width: 146px;
    }

    .footer-meta .curators-logo img.gerb {
        height: 48px;
        width: 40px;
    }

    .footer-meta .curators-logo .divider-wrapper {
        height: 32px;
    }

    .footer-meta .curators-logo img.wings {
        height: 24px;
        width: 72px;
    }

    .footer__links {
        gap: 4px;
    }

    .footer-meta .text-info {
        min-width: 280px;
        max-width: 390px;
        gap: 12px;
    }

    .footer-meta .special-info {
        padding: 0 20px 0 10px;
    }

/* ADAPTIVE -- COMPONENTS -- LIGHTBOX -- MEDIUM */
    .lightbox {
        width: calc(90vw - 32px);
        max-height: calc(100vh - 32px);
    }

    .lightbox__dialog {
        width: 100%;
        gap: 16px;
    }

/*  ВАКАНСИИ > ХИРО БЛОК ——— medium */
    .vacancy-hero {
        max-width: 1279.9px;
        height: 640px;
        margin-top: var(--header-height-m);
    }

    .vacancy-hero .inner {
        max-width: 580px;
        height: 100%;
        padding-left: 32px;
    }

    .vacancy-hero .key-info {
        gap: 12px;
        padding-bottom: 8px;
    }

    .vacancy-hero .logo {
        width: 96px;
        margin-right: 2px;
    }

    .vacancy-hero .divider-wrapper {
        display: flex;
        flex-direction: column;
        align-items: center;
        height: 108px;
        padding: 13px 0px 0px 0px;
    }

    .vacancy-hero .text-info {
        max-width: min-content;
        padding-top: 12px;
    }

    .vacancy-hero h1 {
        font-size: 26px;
        line-height: 104%; /* 41.6px */
        letter-spacing: -0.78px;
    }

    .vacancy-hero p {
        font-size: var(--fz-14);
        font-weight: 200;
        line-height: 140%; /* 19.6px */
        letter-spacing: -0.1px;
        padding-left: 1px;
    }

    .vacancy-hero .subtext {
        font-size: var(--fz-12);
    }

/*  ВАКАНСИИ > АКТУАЛЬНЫЕ ПРЕДЛОЖЕНИЯ ——— medium */
    .vacancies {
        padding: 48px 40px;
    }

    .vacancies .inner {
        max-width: 1200px;
        gap: 72px;
    }

    .vacancies .vacancy-header {
        align-items: flex-start;
        max-width: 1200px;
        flex-wrap: wrap;
        gap: 32px 48px;
    }

    .vacancy-header .key-info {
        align-items: flex-start;
        flex: 1 0 0;
        max-width: 512px;
        gap: 12px;
    }

    .vacancies .vacancy-header img.logo {
        width: 48px;
        min-width: 48px;
        margin: 6px 4px 12px 0;
    }

    .vacancies .vacancy-header .divider-wrapper {
        height: 64px;
        padding: 6px 0 0 0;
    }

    .vacancies .vacancy-header .text-info {
        max-width: 400px;
        padding-top: 4px;
    }

    .vacancy-header .key-info h1 {
        font-size: var(--fz-22);
    }

    .vacancies .vacancy-header h2 {
        font-size: var(--fz-32);
        line-height: 112%;
        text-align: right;
        max-width: 240px;
        margin: 0 0 2px 0;
        margin-left: auto; /* уводим вправо, даже после переноса */
    }

/*  ADAPTIVE —— VACANCY PAGE —— EMPTY | MEDIUM */
    .vacancies .vacancy__empty {
        gap: var(--text-info-gap-l);
        width: 100%;
        max-width: var(--container-width-min);
    }

/*  ВАКАНСИИ > СПИСОК ОТДЕЛОВ ——— medium */
    .department-list {
        max-width: 800px;
    }

    .department-list .content {
        min-height: 56px;
        gap: 16px;
        padding: 0 16px 0 12px;
    }

    .department-list .key-info {
        gap: 16px;
    }

    .department-list .number {
        flex: 0 0 34px; 
        padding: 5px 0 3px 0;
    }

    .department-list .number p {
        font-size: 54px;
    }

    .department-list .text-info {
        gap: 7px;
    }

    .department-list .subheading-3 {
        font-size: var(--fz-18);
        font-weight: 450;
    }

    .department-list .subtext {
        font-size: var(--fz-13);
        line-height: 120%; /* 15.6px */
    }

    .department-list .content .arrow-down {
        width: 40px;
    }

    /* pressed состояние */
    .department-list .department-first.pressed,
    .department-list .department.pressed {
        gap: 24px;
        padding-bottom: 32px;
    }

/*  ВАКАНСИИ > СПИСОК ОТДЕЛОВ > СПИСОК ВАКАНСИЙ (раскрывающаяся часть) ——— medium */
    .department-list .vacancy-list {
        max-width: 690px;
    }

    .vacancy-list a.vacancy-first,
    .vacancy-list a.vacancy,
    .vacancy-list a.vacancy-last {
        min-height: 56px;
        padding: 6px 16px 6px 16px;
    }

    .vacancy-list a .text-info {
        padding: 2px 0 3px 0;
    }

    .vacancy-list h4 {
        font-size: var(--fz-18);
        line-height: 112%; /* 20.16px */
    }

    .vacancy-subtext {
        font-size: var(--fz-10);
        line-height: 116%; /* 11.6px */
    }

    .vacancy-list a .arrow-forward {
        width: 40px;
    }

    .vacancy-list a:hover {
        transform: scale(1.015);
    }

    .vacancy-list a:hover .text-info {
        transform: translateX(-4px);
    }

    .vacancy-list a:hover .arrow-forward {
        transform: translateX(4px);
    }

/*  ВАКАНСИИ > О НАС ——— medium */
    .vacancy-about-us {
        padding: 48px 40px 56px 40px;
    }

    .vacancy-about-us .inner {
        max-width: 1200px;
        gap: 48px;
        padding: 0;
    }

    .vacancy-about-us h1 {
        font-size: var(--fz-48);
        padding-bottom: 16px;
    }

/*  ВАКАНСИИ > ОБ ИНСТИТУТЕ + О КОМАНДЕ ——— medium */
    .vacancy-about-us .vacancy-institute,
    .vacancy-about-us .vacancy-team {
        min-width: 0;
        padding: 10px 0 32px 0;
        scroll-margin-top: 64px;
}

    .vacancy-about-us .vacancy-institute .text-info,
    .vacancy-about-us .vacancy-team .text-info {
        flex-wrap: wrap;
        width: 100%;
        gap: 24px 72px;
    }

    .vacancy-about-us h2 {
        font-size: var(--fz-32);
        line-height: 125%; /* 40px */
        min-width: 360px;
    }

    .vacancy-about-us .vacancy-institute .main-text,
    .vacancy-about-us .vacancy-team .main-text {
        min-width: 480px;
        max-width: 680px;
        gap: 16px;
        padding-top: 8px;
    }

    .vacancy-about-us .lead-2  {
        font-size: var(--fz-18);
        letter-spacing: -0.25px;
    }

    .vacancy-about-us .subtext {
        font-size: var(--fz-14);
        line-height: 140%; /* 19.6px */
    }

/*  ВАКАНСИИ > ГАЛЕРЕЯ ЭЛЕМЕНТОВ medium ——— */
    .vacancy-about-us .element-gallery .element img {
        max-width: 112px;
    }

    .vacancy-about-us .element-gallery .logo {
        width: 48px;
        margin: 24px 32px 18px 32px;
    }

/*  ВАКАНСИИ > РАБОТА У НАС > МЫ ПРЕДЛАГАЕМ ——— medium */
    .vacancy-about-us .our-offer {
        gap: 20px;
        padding: 40px;
    }

    .vacancy-about-us .our-offer h2 {
        font-size: var(--fz-32);
        min-width: 0;
    }

    .vacancy-about-us .our-offer .key-info,
    .vacancy-about-us .our-offer .info-item-subtext {
        max-width: 528px;
        gap: 8px;
        padding: 0 4px 0 16px;
    }

    .vacancy-about-us .our-offer .info-item,
    .vacancy-about-us .our-offer .main-info {
        gap: 16px;
    }

    .vacancy-about-us .our-offer img {
        width: 80px;
    }

    .vacancy-about-us .our-offer .lead-2 {
        font-size: var(--fz-18);
        font-weight: 350;
        line-height: 132%; /* 25.8px */
        letter-spacing: -0.25px;
    }

    .vacancy-about-us .our-offer .info-item-subtext {
        padding-left: 0;
        padding-top: 6px;
    }

    .vacancy-about-us .our-offer .subtext {
        font-size: var(--fz-13);
        line-height: 120%;
        letter-spacing: -0.25px;
    }

    .vacancy-about-us .our-offer .secondary-info {
        gap: 4px;
        padding: 0 24px 0 94px;
    }

/* ВАКАНСИИ > НАШИ КУРАТОРЫ ——— */
    .vacancy-about-us .curators {
        padding: 0;
        scroll-margin-top: 80px;
    }

    .vacancy-about-us .curators .inner {
        max-width: 1200px;
        gap: 88px 212px;
    }

    .vacancy-about-us .curators .title {
        flex-wrap: wrap;
        padding-top: 12px;
    }

/*  ВАКАНСИИ > КОНТАКТЫ ——— */
    .vacancy-about-us .contacts  {
        padding: 10px 0 0 0;
        scroll-margin-top: 80px;
    }

    .vacancy-about-us .contacts .inner {
        flex-wrap: wrap;
        gap: 32px 72px;
    }

    .vacancy-about-us .contacts .text-info {
        max-width: 360px;
        gap: 32px 48px;
    }

    .vacancy-about-us .contacts .main-text {
        gap: 10px;
    }

    .vacancy-about-us .cta {
        min-width: 440px;
        max-width: 560px;
        gap: 24px;
    }

    .vacancy-about-us .cta h3 {
        font-size: var(--fz-18);
    }

    .vacancy-about-us .cta .text-block {
        gap: 12px;
        padding-bottom: 4px;
    }

    .vacancy-about-us .button {
        height: 40px;
        max-width: 268px;
        padding: 8px 32px;
        font-size: var(--fz-10);
}

/*  СТРАНИЦА ВАКАНСИИ > ШАПКА ВАКАНСИИ ——— medium */
    .vacancy-main-info {
        display: flex;
        flex-direction: column;
        align-items: center;
        width: 100%;
        padding: 48px 32px 72px 32px;
        gap: 48px;
    }

    .vacancy-main-info .vacancy-header {
        display: flex;
        justify-content: center;
        align-items: flex-start;
        width: 100%;
        max-width: 600px;
        max-height: fit-content;
        gap: 16px;    
    }

    .vacancy-main-info .vacancy-header .ident {
        margin-top: 2px;
    }

    .vacancy-main-info .vacancy-header .ident img {
        display: flex;
        align-items: center;
        width: 62px;
        max-height: 60px;
    }

    .vacancy-main-info .vacancy-header .lead-3 {
        font-size: var(--fz-14);
        font-weight: 300;
        line-height: 130%; /* 19.6px */
        letter-spacing: -0.14px;
    }

    .vacancy-main-info .divider-wrapper {
        display: flex;
        flex-direction: column;
        align-items: center;
        height: 80px;
        width: 2px;
        padding: 0;
        margin: 2px;
    }

    .vacancy-main-info .divider {
        height: 100%;
        align-items: center;
        outline: 0.5px solid var(--grey-text-light);
        margin: 0;
    }

    .vacancy-main-info .text-info {
        display: flex;
        flex: 1 0 0;
        flex-direction: column;
        align-items: flex-start;
        max-width: 472px;
        gap: 2px;
        padding: 2px 0 0 0;
        margin: 0;
    }

    .vacancy-main-info h1 {
        font-size: 27px;
        line-height: 108%; /* 29.16px */
        letter-spacing: -0.54px;
    }

/*  СТРАНИЦА ВАКАНСИИ > ОПИСАНИЕ ВАКАНСИИ ——— medium */
    .vacancy-main-info .key-info {
        display: flex;
        flex-direction: column;
        align-items: center;
        width: 100%;
        max-width: 720px;
        border-top: 1px solid var(--grey-text-super-light);
        gap: 32px;
        padding-top: 40px;
    }

    .vacancy-main-info .key-info .text-info {
        display: flex;
        flex-direction: column;
        align-items: center;
        width: 100%;
        max-width: 800px;
        gap: 8px;
    }

    .vacancy-main-info .key-info .text-info h2 {
        text-align: center;
        font-size: 32px;
        font-weight: 500;
        line-height: 125%; /* 40px */
        letter-spacing: -0.64px;
    }

    .vacancy-main-info .key-info .text-info p {
        font-size: var(--fz-18);
        text-align: center;
        font-weight: 350;
        line-height: 132%; /* 23.76px */
        letter-spacing: -0.36px;
        color: var(--grey-text-light);
        margin: 0;
    }

/*  СТРАНИЦА ВАКАНСИИ > РАСКРЫВАЮЩЕЕСЯ МЕНЮ ——— medium */
    .vacancy-main-info .vacancy-info {
        max-width: 640px;
        gap: 28px;
        padding: 8px 0 16px 0;
    }

    .vacancy-main-info .vacancy-info .require,
    .vacancy-main-info .vacancy-info .require-skills {
        max-width: 640px;
        gap: 28px;
        padding: 4px 0 0 0;
    }

    .vacancy-main-info .vacancy-info h3 {
        font-size: var(--fz-18);
        line-height: 112%; /* 20px */
        font-weight: 500;
        letter-spacing: -0.25px;
    }

    .vacancy-main-info .shevron-down {
        width: 20px;
        aspect-ratio: 1 / 1;
        margin-top: 1px;
    }

/*  список */
    .vacancy-main-info ul.body {
        gap: 12px;
        margin: 0;
    }

    .vacancy-main-info p,
    .vacancy-main-info ul.body li {
        font-size: var(--fz-14);
        line-height: 135%; /* 20px */
    }

    .vacancy-main-info ul.body li {
        padding-left: 16px;
    }

    .vacancy-main-info ul.body li::before {
        top: 1px;
        font-size: var(--fz-20);
    }

/*  скрытый список */
    .vacancy-main-info .info-list {
        gap: 16px;
        max-width: 560px;
        padding: 0 40px 24px 40px;
    }

    .vacancy-main-info .require-skills .info-list {
        padding: 0 40px;
    }

    .require-skills .info-list .require-type {
        gap: 8px;
    }

    .vacancy-main-info .require-skills .info-list h5 {
        font-size: var(--fz-14);
    }

/*  активный */
    .vacancy-main-info .require.active .info-list,
    .vacancy-main-info .require-skills.active .info-list {
        padding-bottom: 24px;
    }

    .vacancy-main-info .require-skills.active .info-list p {
        padding-left: 20px;
    }

    .vacancy-main-info .require-skills.active ul.body {
        gap: 16px;
        padding: 0 0 0 20px;
    }

/*  кнопки */
    .vacancy-main-info .button-wrapper {
        max-width: 720px;
        gap: 4px;
    }

    .vacancy-main-info .button,
    .vacancy-main-info .button-secondary {
        height: 48px;
        max-width: 360px;
        font-size: var(--fz-10);
        line-height: 106%; /* 10.6px */
        padding: 12px 32px;
    }

/*  СТРАНИЦА ВАКАНСИИ > РАБОТА У НАС ——— medium */
    .work-with-us {
        max-width: 1280px;
        gap: 64px;
        padding: 0 32px 56px 32px;
    }

    .work-with-us h3 {
        font-size: var(--fz-24);
        font-weight: 500;
        letter-spacing: -0.25px;
        margin-bottom: 4px;
    }

/*  СТРАНИЦА ВАКАНСИИ > РАБОТА У НАС > МЫ ПРЕДЛАГАЕМ ——— medium */
    .work-with-us .our-offer {
        max-width: 720px;
        gap: 32px;
        padding: 64px 0 0 0;
    }

    .work-with-us .our-offer .key-info,
    .work-with-us .our-offer .info-item-subtext {
        max-width: 460px;
    }

    .work-with-us .our-offer .info-item,
    .work-with-us .our-offer .main-info {
        gap: 10px;
    }

    .work-with-us .our-offer img {
        width: 64px;
    }

    .work-with-us .our-offer .lead-2 {
        font-size: var(--fz-18);
    }

    .work-with-us .our-offer .secondary-info {
        gap: 4px;
        padding: 4px 20px 0 74px;
    }

    .work-with-us .our-offer .subtext {
        font-size: var(--fz-13);
        line-height: 135%;
    }

    .work-with-us .other,
    .work-with-us .contacts  {
        max-width: 720px;
        gap: 32px;
        padding: 56px 0 12px 0;
    }

    .work-with-us .element-gallery {
        max-width: 512px;
    }

    .work-with-us .element {
        flex: 0 0 168px;
    }

    .work-with-us .other .main-text,
    .work-with-us .contacts .main-text {
        max-width: 512px;
        gap: 16px;
        padding-bottom: 16px;
    }

    .work-with-us .button {
        height: 48px;
        max-width: 360px;
        font-size: var(--fz-10);
        line-height: 106%; /* 10.6px */
        padding: 12px 32px;
    }

/*  КУКИЗ --- */
    .cookie-popup {       
        padding: 32px 24px;        
    }

    .cookie-popup__inner {
        gap: 24px;
    }

    .cookie-popup__text {
        font-size: var(--fz-17);
        line-height: 135%;
    }

/*  СТРАНИЦА КОНКУРСА > HEADER --- medium */
    header.wide-header {
        max-width: 100vw;
        height: 56px;
    }

    header.wide-header .content-wrapper {
        display: flex;
        max-width: 1200px;
        padding: 0;
        margin: 0 32px;
    }

/*  СТРАНИЦА КОНКУРСА > HERO --- */
    .konkurs-hero {  
        padding: 24px 32px 32px 32px;
        margin-top: var(--header-height-m);
    }

    .konkurs-hero .inner {
        max-width: 100vw;        
        height: 100%;
        gap: 96px;
    }

    .konkurs-hero .main-info {
        flex-wrap: wrap;
        row-gap: 96px;
        margin: 0;
    }

    .konkurs-hero .key-info {
        flex: 1 1 560px;
        min-width: 560px;
        max-width: 800px;
        min-height: min-content;
        row-gap: 32px;
    }

    .konkurs-hero img {
        display: block;
        flex: 1 1 560px;
        min-width: 560px;
        max-width: 800px;
        width: 100%;
        min-height: 440px;
        object-fit: contain;
        margin-top: 32px;
    }

    .konkurs-hero .title {
        gap: 20px;
    }

    .konkurs-hero .key-info h1 {
        font-size: 60px;
        font-weight: 500;
        line-height: 108%; /* 51.84px */
        letter-spacing: -0.5px;
    }

    .konkurs-hero .key-info .lead-1 {
        font-family: var(--main-font);
        font-size: var(--fz-24);
        font-weight: 400;
        line-height: 135%;
        letter-spacing: -0.72px;
    }

    .konkurs-hero .secondary-info h1 {
        font-size: var(--fz-48);
        font-weight: 500;
        line-height: 108%; /* 51.84px */
        letter-spacing: -0.5px;
    }

    .konkurs-hero h3 {
        font-size: var(--fz-24);
        font-weight: 450;
        line-height: 115%; /* 27.6px */
        letter-spacing: -0.5px;
        color: var(--pink-text-black);
        margin-bottom: 4px;
    }

    .konkurs-hero .secondary-info {
        max-width: 1279.9px;
        row-gap: 40px;
    }

    .konkurs-hero .event-date {
        flex: 1 0 440px;
        min-width: 440px;
        max-width: 560px;
        gap: 20px;
        padding-right: 56px;
    }

    .konkurs-hero .cta {
        flex: 1 0 400px;
        min-width: 400px;
        max-width: 640px;
        gap: 26px;
    }

    /* кнопки */
    .konkurs-hero .button-wrapper {
        display: flex;
        flex-direction: row;
        align-items: flex-start;
        justify-content: flex-start;
        flex-wrap: wrap;
        width: 100%;
    }

    .konkurs-hero .button,
    .konkurs-hero .button-secondary {
        height: 48px;
        flex: 1 0 268px;
        min-width: 268px;
        max-width: 480px;
        padding: 8px 32px;
        gap: 12px;
        font-size: var(--fz-10);
        line-height: 106%; /* 10.6px */
    }

    .konkurs-hero .button:hover,
    .konkurs-hero .button-secondary:hover {
        min-width: 240px;
    }

/*  СТРАНИЦА КОНКУРСА > INTRO --- */
    .konkurs-intro {      
        padding: 32px;
    }

    .konkurs-intro .inner {
        max-width: 100vw;        
        gap: 48px;
    }

    .konkurs-intro h1 {
        font-size: var(--fz-48);
        line-height: 108%; /* 51.84px */
        letter-spacing: -0.5px;
        flex: 1 0 440px;
        min-width: 440px;
        max-width: 560px;
        padding-right: 56px;
        margin: 0;
    }

    .konkurs-intro .brand-name {
        font-family: var(--main-font);
        font-size: 26px;
        line-height: 116%; /* 41.6px */
        text-wrap: wrap;
    }

    .konkurs-intro .paragraph {
        font-size: var(--fz-16);
        line-height: 135%; /* 20.25px */
        letter-spacing: -0.15px;
        color: var(--grey-text-light);
        margin-left: 2px;
        text-wrap: wrap;
    }

    .konkurs-intro .organisation {
        align-items: stretch;
        flex-wrap: wrap;
        max-width: 100vw;
        padding: 16px 0 40px 0;
        row-gap: 24px;
    }

    .konkurs-intro .key-info {
        flex: 1 0 400px;
        min-width: 320px;
        max-width: 800px;
        gap: 4px;
        padding: 11px 0;
        margin-left: 0;
    }

    .konkurs-intro .element-gallery {
        gap: 64px;
    }

    .konkurs-intro .element {
        max-width: 112px;
    }

    .konkurs-intro .big-text {
        font-size: 54px;
        line-height: 140%; /* 70.2px */
        letter-spacing: -1.1px;
        padding: 48px 0;
        margin: 0;
    }

/* СТРАНИЦА КОНКУРСА > РЕЗУЛЬТАТЫ ——— medium */
    .summary {
        padding: 64px 32px 80px 32px;
    }

    .summary .inner {
        max-width: 100vw;
        gap: 64px;
    }

    .summary .inner h1 {
        font-size: var(--fz-48);
        line-height: 108%;
        padding-bottom: 4px;
    }

    .summary .inner .paragraph {
        font-size: var(--fz-14);
    }

    .summary .inner .main-info {
        gap: 32px;
        padding: 0;
    }

    .summary .inner .main-info .text-info {
        gap: 48px;
    }

    .summary .inner .main-info .text-info .key-info {
        gap: 6px;
    }

    .summary .inner .main-info .text-info .key-info h2 {
        font-size: 60px;
        line-height: 108%;
        letter-spacing: -0.75px;
    }

    .summary .inner .main-info .text-info .key-info p {
        font-size: var(--fz-14);
    }

    .summary .inner .subheading-3 {
        font-size: var(--fz-24);
        max-width: 512px;
    }

    .summary .inner .card-list {
        max-width: 960px;
        padding: 0 12px;
    }

    .summary .inner .card-list .subheading-4 {
        font-size: var(--fz-18);
        padding: 14px;
    }

    .summary .inner .card-list .info-card {
        padding: 16px 12px;
    }

    .summary .inner .card-list .info-card .inner {
        gap: 16px 32px;
    }

    .summary .inner .card-list .info-card .inner .text-info {
        min-width: 400px;
    }

    .summary .inner .info-card .subheading-3 {
        padding-bottom: 2px;
    }

    .summary .inner .info-card .number {
        font-size: 56px;
        max-width: 148px;
        margin: 2px 2px 0 0;
    }

    .summary .inner .card-list .secondary-info {
        gap: 16px;
        padding: 72px 0 76px 0;
    }

    .summary .inner .card-list .subheading-3--secondary {
        max-width: 640px;
    }

    .summary .inner .card-list .subheading-4--secondary {
        max-width: 440px;
        padding: 0;
    }

    .summary .inner .card-list .paragraph--tetryary {
        max-width: 600px;
    }

    .summary .inner .CTA {
        gap: 32px;
    }

    .summary .inner .button {
        height: 48px;
        max-width: 368px;
        padding: 8px 32px;
        font-size: var(--fz-10);
    }

/*  СТРАНИЦА КОНКУРСА > ОСНОВНЫЕ ЗАДАЧИ --- */
    .primary-info {
        padding: 32px 32px 40px 32px;
    }

    .primary-info .inner {
        max-width: 100vw;
        gap: 48px;
    }

    .primary-info h1 {
        font-size: var(--fz-48);
        line-height: 108%; /* 51.84px */
        letter-spacing: -0.5px;
        max-width: none;
        padding-bottom: 8px;
    }

    .primary-info h3 {
        font-size: var(--fz-24);
        font-weight: 450;
        line-height: 115%; /* 27,6px */
        max-width: none;
        padding-bottom: 4px;
    }

    .primary-info .main-tasks {
        align-items: stretch;
        gap: 48px;
        padding: 20px 0 0 0;
    }

    .primary-info .main-tasks .key-info {
        flex-wrap: wrap;
    }

    .primary-info .main-tasks img {
        min-width: 320px;
        max-width: 256px;
        margin-top: 0;
    }

    .primary-info .main-tasks .card-list {
        min-width: 560px;
        max-width: 720px;
        gap: 0px;
    }

    .primary-info .main-tasks .info-card {
        max-width: 720px;
        gap: 28px;
        padding: 16px 16px 16px 0;
    }

    .primary-info .main-tasks .info-card .number {
        max-width: 72px;
        max-height: none;
    }

    .primary-info .main-tasks .info-card .text-info {
        max-width: 680px;
        gap: 8px;
        padding-top: 9px;
    }

    .primary-info .main-tasks .info-card .number p {
        font-size: 123px;
        text-align: center;
    }

    .primary-info .main-tasks .info-card p {
        font-size: var(--fz-24);
        font-weight: 400;
        line-height: 128%; /* 31px */
        letter-spacing: -0.4px;
    }

/*  СТРАНИЦА КОНКУРСА > ЦЕЛИ --- */
    .primary-info .target {
        gap: 64px;
        padding: 64px 0;
    }

    .primary-info .target .key-info {
        display: flex;
        flex-direction: column;
        gap: 64px;
        padding: 8px 0 4px 0;
        border-top: 0.5px solid var(--grey-text-light);
    }

    .primary-info .target h3 {
        max-width: 560px;
    }

    .primary-info .target .info-list {
        max-width: 710px;
        margin-right: 40px;
    }

    .primary-info .target .element-gallery {
        flex-wrap: wrap;
        gap: 56px 80px;
        padding: 24px 0 0 0;
    }

    .primary-info .target .element-gallery img {
        flex: 1 1 184px;
        min-width: 184px;
        max-width: 192px;
    }

    .primary-info .target .info-list ul.body {
        gap: 16px;
    }

    .primary-info .target .info-list ul.body li {
        font-family: var(--main-font);
        font-size: var(--fz-24);
        font-weight: 400;
        line-height: 125%; /* 30.72px */
        letter-spacing: -0.48px;
        padding-left: 20px;
    }

    .primary-info .target .info-list ul.body li::before {
        left: 0;
        top: 2px;
        font-size: var(--fz-24);
    }


/*  СТРАНИЦА КОНКУРСА > КОМИССИЯ ——— medium */
    .primary-info .comission {
        padding: 10px 0 48px 0;
    }

    .primary-info .comission .inner {
        gap: 88px;
    }

    .primary-info .comission h1 {
        font-size: var(--fz-48);
        line-height: 108%; /* 51.84px */
        padding-bottom: 8px;
    }

    .primary-info .comission h2 {
        font-size: var(--fz-32);
        line-height: 112%; /* 36px */
        letter-spacing: -0.5px;
    }

    .primary-info .comission .main-info {
        gap: 48px;
    }

    .primary-info .comission .info-list {
        gap: 32px;
        padding-bottom: 16px;
    }

    .primary-info .comission .info-list .info-card {
        flex-wrap: wrap;
        min-height: 72px;
        gap: 24px 64px;
        padding: 12px 0;
    }

    .primary-info .comission .info-list h4 {
        font-size: var(--fz-18);
        line-height: 115%; /* 28px */
        max-width: 400px;
        min-width: 280px;
        padding: 4px 0;
        flex: 1 0 0;
    }

    .primary-info .comission .text-info {
        flex: 1 0 0;
        min-width: 480px;
        max-width: 700px;
        gap: 28px;
    }

    .primary-info .comission .info-list .key-info {
        flex: 1 0 0;
        min-width: 480px;
        max-width: 700px;
        gap: 2px;
    }

    .primary-info .comission .info-list p {
        font-size: var(--fz-20);
        line-height: 130%; /* 40px */
    }

    .primary-info .comission .button {
        height: 48px;
        width: 100%;
        max-width: 480px;
        padding: 8px 32px;
        font-size: var(--fz-10);
    }

/*  СТРАНИЦА КОНКУРСА > УСЛОВИЯ УЧАСТИЯ --- */
    .participation-terms {
        padding: 32px 32px 24px 32px;
        max-width: 100vw;
    }

    .participation-terms .inner {
        max-width: 100vw;
        gap: 144px;
    }

    .participation-terms h1 {
        font-size: var(--fz-48);
        line-height: 108%; /* 52px */
        letter-spacing: -1px;
        flex: 1 0 360px;
        min-width: 360px;
        max-width: 560px;
        padding: 0 0 8px 0;
        margin-right: auto;
    }

    .participation-terms h2 {
        font-size: var(--fz-32);
        line-height: 112%; /* 36px */
        letter-spacing: -0.5px;
    }

    .participation-terms h3 {
        font-size: var(--fz-24);
        line-height: 115%; /* 28px */
        flex: 1 0 200px;
        min-width: 200px;
        max-width: 560px;
        gap: 40px;
        margin-right: auto;
    }

    .participation-terms .info-list p {
        font-size: var(--fz-16);
        font-weight: 400;
        line-height: 135%; /* 20px */
        letter-spacing: -0.15px;
        max-width: none;
    }

    .participation-terms .lead-1 {
        font-size: var(--fz-24);
        font-weight: 400;
        line-height: 128%; /* 30.72px */
        letter-spacing: -0.48px;
    }

    .participation-terms .key-info {
        align-items: stretch;
        gap: 80px;
        row-gap: 32px;
        flex-wrap: wrap;
        margin: 0;
    }

    .participation-terms .key-info .info-list {
        flex: 1 0 400px;
        min-width: 400px;
        max-width: 560px;
        padding-top: 10px;
        gap: 32px;
        margin-right: auto;
    }

    .participation-terms .key-info .text-info {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        width: 100%;
        gap: 8px;
        margin: 0;
    }

    .participation-terms .secondary-info .text-info {
        gap: 80px;
        padding: 12px 0;
    }

    .participation-terms .secondary-info .text-info p {
        display: flex;
        flex: 1 0 400px;
        min-width: 400px;
        max-width: 560px;
    }

/*  СТРАНИЦА КОНКУРСА > ПАРТНЁРЫ --- */
    .partners {
        max-width: 100vw;
        gap: 0;
        padding: 40px 32px 40px 32px;
    }

    .partners .inner {
        max-width: 100vw;        
        padding: 24px 0 16px 0;
        gap: 48px;
        border-top: 0.5px solid var(--grey-text-super-light);
        border-bottom: 0.5px solid var(--grey-text-super-light);
    }

    .partners h1 {
        font-size: var(--fz-48);
        line-height: 108%; /* 52px */
        letter-spacing: -1px;
        max-width: none;
    }

    .partners .lead-1 {
        font-size: var(--fz-24);
        font-weight: 300;
        line-height: 128%; /* 30.72px */
        letter-spacing: -0.48px;
    }

    .partners .card-gallery {
        max-width: 100vw;
        gap: 48px;
    }

    .partner-card {
        flex: 1 1 420px;
        min-width: 420px;
        max-width: 560px;
        gap: 20px 80px;
        padding: 12px 48px 18px 0;
        margin-right: auto;
    }

    .partner-card img {
        max-width: 96px;
    }

/*  СТРАНИЦА КОНКУРСА > ОСНОВНАЯ ИНФА --- */
    .contact-info {
        max-width: 100vw;        
        padding: 32px 32px;
    }

    .contact-info .inner {
        max-width: 100vw;
        gap: 96px;
    }

    .contact-info h1 {
        font-size: var(--fz-48);
        line-height: 108%; /* 52px */
        letter-spacing: -1px;
        max-width: none;
        margin-bottom: 8px;
    }

    .contact-info .konkurs-info {
        max-width: 100vw;
        gap: 56px 88px;
    }

    .contact-info .konkurs-info h3 {
        font-size: var(--fz-24);
        font-weight: 450;
        line-height: 115%; /* 28px */
    }

    .contact-info .konkurs-info .lead-1 {
        font-size: var(--fz-24);
        font-weight: 300;
        line-height: 135%;
        letter-spacing: -0.7px;
    }

    .contact-info .konkurs-info .contacts {
        flex: 1 0 440px;
        min-width: 440px;
        max-width: 560px;
        gap: 25px;
        padding-right: 0;
    }

    .contact-info .konkurs-info .email-info {
        gap: 12px;
        min-height: 48px;
    }

    .contact-info .konkurs-info .email-info img {
        width: 28px;
        height: auto;
    }

    .contact-info .konkurs-info .cta {
        flex-wrap: wrap;
        flex: 1 0 400px;
        min-width: 400px;
        max-width: 640px;
        gap: 26px;
        margin-right: auto;
    }

    /* кнопки */
    .konkurs-info .button-wrapper {
        max-width: 720px;
    }

    .konkurs-info .button,
    .konkurs-info .button-secondary {
        height: 48px;
        flex: 1 0 268px;
        min-width: 268px;
        max-width: 480px;
        padding: 8px 32px;
        font-size: var(--fz-10);
        line-height: 106%; /* 10.6px */
    }

/*  СТРАНИЦА КОНКУРСА > ФУТЕР --- */
    footer.wide-footer {
        max-width: 100vw;
        padding: 24px 32px 32px 32px;
    }

    footer.wide-footer .inner {
        max-width: 100vw;
    }

    footer.wide-footer .footer-branding {
        padding: 0 0 28px 0;
    }

    footer.wide-footer img.logo {
        width: 48px;
        margin: 4px 0 0 2px;
    }

    footer.wide-footer .text-info {
        flex: 1 0 360px;
        min-width: 360px;
        max-width: 390px;
        gap: 2px;
        padding: 4px 24px 0 20px;
    }

    footer.wide-footer .brand-name {
        font-size: var(--fz-20);
        line-height: 116%; /* 22px */
    }

    footer.wide-footer .paragraph {
        font-size: var(--fz-13);
        margin-left: 2px;
    }

    footer.wide-footer .text-info p {
        max-width: none;
    }

    footer.wide-footer .footer-meta {
        max-width: 1280px;
        padding: 32px 0;
    }

    footer.wide-footer .footer-meta .social {
        max-width: 270px;
        gap: 20px;
    }

    footer.wide-footer .footer-meta .social .title {
        gap: 12px;
        margin-bottom: 0;
    }

    footer.wide-footer h4 {
        font-size: var(--fz-18);
        font-weight: 450;
        line-height: 112%; /* 20px */
        letter-spacing: 0px;
        max-width: 200px;
        padding-left: 1px;
    }

    footer.wide-footer .footer-meta p {
        font-family: var(--main-font);
        font-size: var(--fz-13);
        line-height: 140%; /* 16px */
    }

    footer.wide-footer .footer-meta .title a {
        height: 32px;
    }

    footer.wide-footer .footer-meta .social img.qr-code {
        width: 104px;
        height: auto;
    }

    footer.wide-footer .footer-meta .text-info {
        flex: 1 0 360px;
        max-width: 400px;
        gap: 8px;
        padding-top: 4px;
        padding-right: 0;
        margin: 0;
    }
}

@media (max-width: 1079.9px) {
/*  ADAPTIVE —— ALL PROJECTS | S-MEDIUM */
    .project-card {
        grid-template-columns: minmax(0, 1fr);
    }
     
    .work-place {
        padding-bottom: 48px;
    }

    .work-place .secondary-info .card-list {
        border-bottom: 1px solid var(--grey-text-light);
    }
}

@media (max-width: 967px) {
/*  ADAPTIVE —— ROOT | MEDIUM */
    :root {
        --font-size-metric: 40px;
        --font-size-index: 15px;
        --font-size-li-before: 20px;
        --li-before-padding-top: 1px;

    /*  TABLE LIST ITEM TOKENS */
        --table-list-item-padding-top: var(--space-8);
        --table-list-item-padding-x: var(--space-20);
        --table-list-item-padding-bottom: var(--space-12);

    }

/*  ADAPTIVE -- ALL PROJECTS | MEDIUM */
    .projects-filter-status {
        padding-bottom: var(--text-block-padding-m);
    }

/*  ADAPTIVE -- NEWS -- MEDIUM 967 */
    .news-track {
        grid-auto-columns: minmax(300px, 1fr);
    }

    .news-item {
        width: min(100%, 640px);
    }

    .team .inner {
        gap: 40px 0;
    }

    .team .inner .title {
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        min-width: 320px;
        max-width: 920px;
        gap: 0;
        padding-right: 8px;
    }

    .team .inner .text-info {
        min-width: 688px;
        padding-left: 0;
        gap: 32px;
    }

    .work-place .inner {
        gap: 88px;
    }

    .work-place .main-info {
        gap: 40px;
    }

/*  ADAPTIVE -- COMPONENTS -- LIGHTBOX -- MEDIUM */
    .lightbox {
        width: calc(88vw - 32px);
    }

    .hangers .intro-info .key-info {
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        min-width: 688px;
        max-width: 920px;
        gap: 0;
        padding-right: 8px;
    }

    .hangers .intro-info .text-info {
        min-width: 688px;
        padding-left: 0;
        gap: 40px;
    }

    .vacancy-about-us .vacancy-institute .main-text,
    .vacancy-about-us .vacancy-team .main-text {
        max-width: 800px;
    }
}

/*  МОБИЛКА ——— */
@media (max-width: 767.9px) {
    :root {
        --font-size-h1: 32px;
        --font-size-h2: 24px;
        --font-size-h3: 18px;
        --font-size-h4: 15px;
        --font-size-h5: 12px;
        --font-size-year: 48px;
        --font-size-item-number: 38px;
        --font-size-item-scale: 13px;
        --font-size-metric: 32px;
        --font-size-sh1: 32px;
        --font-size-sh2: 24px;
        --font-size-sh3: 20px;
        --font-size-sh4: 16px;
        --font-size-index: 12px;
        --font-size-lead: 16px;
        --font-size-paragraph: 13px;
        --font-size-subtext: 10px;
        --font-size-btn: 10px;
        --font-size-tag: 9px;

        --nav-icon-width: 24px;
    }

/*  ADAPTIVE —— MP > HERO | SMALL */
    .hero {
        align-items: flex-start;
        max-height: 900px;
        background-image: url(../img/bg/MP-hero_bg_v1.1-mobile.jpg);
        margin-top: var(--header-height-s);
    }

    .hero .inner {
        justify-content: flex-start;
        gap: 48px;
        max-width: 342px;
        padding: 16px;
    }

    .hero .key-info {
        flex-wrap: wrap;
        gap: 10px;
        padding-bottom: 4px;
    }

    .hero img.logo {
        width: 64px;
        min-width: 64px;
        margin: 0 4px 8px 0;
    }

    .hero .divider-wrapper {
        height: 64px;
        padding: 0 3px 1px 1px;
    }

    .hero .text-info {
        padding: 0;
    }

    .hero h1 {
        font-size: var(--fz-17);
        line-height: 108%; /* 17px */
        letter-spacing: -0.25px;
    }

    .hero p,
    .hero .subtext {
        font-size: var(--fz-12);
        line-height: 116%;
        padding: 0;
    }

    .hero .subtext {
        text-align: left;
        width: 100%;
        min-width: fit-content;
        margin-left: 16px;
    }

/*  ADAPTIVE —— MP >  INTRO | SMALL */
    .intro {
        padding: 40px 16px 48px 16px;
    }

    .intro h1 {
        font-size: var(--fz-32);
        line-height: 112%; /* 36px */
        max-width: 704px;
    }

    .intro p {
        font-size: var(--fz-18);
        font-weight: 350;
        line-height: 132%; /* 24px */
    }

    .intro .inner {
        align-items: flex-start;
        max-width: 736px;
        gap: 24px;
    }

    .intro .text-block {
        max-width: 736px;
        gap: 28px;
        padding-bottom: 20px;
    }

    .intro img.arrow-inside {
        width: 28px;
    }

/*  ADAPTIVE —— ALL PROJECTS | SMALL */
    .projects {
        padding-bottom: 48px;
    }

    .projects .inner {
        gap: var(--container-inner-gap-s);
        max-width: var(--container-width-min);
        padding: 40px 16px 0;
    }

    .projects-panel {
        gap: var(--container-gap-s);
        padding-top: var(--content-padding-top-s);
    }

/*  ADAPTIVE —— ALL PROJECTS —— FILTER | SMALL */
    .projects-filter-status {
        gap: var(--text-info-gap-s);
        padding-bottom: var(--text-block-padding-s);
    }

    .project-card {
        gap:
            calc(var(--card-gap-m) / 2)
            var(--card-gap-s);
    }

    .project-card__key-info {
        gap:
            var(--card-gap-xs)
            var(--card-gap-s);
    }

    .project-card__cta {
        gap: var(--card-gap-s);
    }

    .project-card__cta .btn {
        max-width: none;
    }

    .project-card__text-info {
        gap: var(--text-info-gap-m);
    }

    .project-card__facts {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .project-card__fact {
        padding-top: var(--text-block-padding-m);
    }

/*  ADAPTIVE —— NEWS | SMALL */
    .news {
        padding: 48px 16px;
    }

    .news .inner,
    .news-slider {
        gap: 32px;
    }

    .news-slider::before,
    .news-slider::after {
        display: none;
    }

    .news-item {
        flex: 0 0 100%;
        min-width: 100%;
        max-width: 100%;
    }

    .news-card {
        padding: 20px 16px;
    }

    .news-card__inner {
        gap: 20px;
    }

    .news-card__cover {
        height: auto;
        aspect-ratio: 16 / 10;
    }

    .news-card .cta {
        gap: 20px;
    }

    .news-card__cta .btn {
        max-width: none;
    }

    .news-nav {
        flex-direction: column;
        gap: 12px;
    }

    .news-nav .btn {
        max-width: none;
        width: 100%;
    }

    .news__photo-grid {
        grid-template-columns: repeat(2, minmax(0, 2fr));
        gap: 8px;
    }

/*  ADAPTIVE —— NEWS MODAL | SMALL */
    .news-modal {
        width: calc(95vw - 16px);
        max-height: calc(100vh - 16px);
    }

    .news-modal__body {
        max-height: calc(100vh - 16px);
        padding: 20px 16px 24px;
    }

    .news-modal__content {
        gap: 20px;
    }

    .news-modal__content > .news-card__cover,
    .news-modal__content > img {
        border-radius: 0 20px;
    }

    .news-overlay__close,
    .news-overlay--prev,
    .news-overlay--next {
        width: var(--btn-height-m);
        height: var(--btn-height-m);
    }

    .news-overlay__close {
        top: 8px;
        right: 8px;
    }

    .news-overlay--prev {
        left: 2px;
        background: var(--grey-bg-light);
    }

    .news-overlay--next {
        right: 2px;
        background: var(--grey-bg-light);
    }


/*  О НАС ——— */
    .about-us {
        gap: 0;
        padding: 32px 0 0 0;
    }

/*  О НАС > НАПРАВЛЕНИЯ ДЕЯТЕЛЬНОСТИ ——— small */
    .about-us .work-direction {
        padding: 0 16px 32px 16px;
    }

    .about-us .work-direction .inner {
        align-items: flex-start;
        gap: 56px;
    }

    .about-us .work-direction h2 {
        font-size: var(--fz-24);
        line-height: 115%;
        flex: 1 0 0;
        min-width: 210px;
        max-width: 240px;
        padding-top: 6px;
    }

    .about-us .work-direction .main-info {
        min-width: 320px;
        max-width: 736px;
        gap: 56px;
    }

    .about-us .work-direction .main-info .list {
        flex: 1 0 310px;
        min-width: 240px;
        max-width: 400px;
    }

    .about-us .work-direction .main-info .list .subheading-5 {
        font-size: var(--fz-14);
        letter-spacing: -0.25px;
    }

/*  О НАС > НАПРАВЛЕНИЯ ДЕЯТЕЛЬНОСТИ ——— список */
    .about-us .work-direction-item-first,
    .about-us .work-direction-item {
        padding: 0;
    }
    
    .about-us .work-direction-item-first .content-wrapper,
    .about-us .work-direction-item .content-wrapper {
        gap: 24px;
        padding: 12px 0;
    }

    .about-us .work-direction-icon img {
        width: 28px;
        height: 28px;
    }

    .about-us .work-direction-item-first .wd-key-info,
    .about-us .work-direction-item .wd-key-info {
        flex-direction: column;
        gap: 16px;
        padding: 2px 0 20px 0;
    }

    .about-us .work-direction-item-first .wd-key-info .secondary-info,
    .about-us .work-direction-item .wd-key-info .secondary-info {
        gap: 8px;
        padding: 0;
    }

    .about-us .work-direction-item-first .wd-key-info .secondary-info {
        min-width: 152px;
        max-width: 100%;
    }

    .about-us .work-direction-item-first .wd-key-info .secondary-info img,
    .about-us .work-direction-item .wd-key-info .secondary-info img {
        max-height: 400px;
    }

    .about-us .work-direction-item-first .wd-key-info .secondary-info img {
        max-height: 280px;
    }

    .about-us .work-direction-item-first .wd-key-info .secondary-info .text-info,
    .about-us .work-direction-item .wd-key-info .secondary-info .text-info {
        padding: 0 0 0 6px;
        max-width: 100%;
    }

    .about-us .work-direction-item-first .wd-key-info .text-block,
    .about-us .work-direction-item .wd-key-info .text-block {
        min-width: 280px;
        max-width: 640px;
        gap: 10px;
        padding: 0 0 0 7px;
        margin-right: 8px;
    }

    .about-us .work-direction-item .wd-key-info .text-block {
        max-width: 92%;
    }

    .about-us .work-direction-item-first .wd-key-info p,
    .about-us .work-direction-item .wd-key-info p {
        font-size: var(--fz-12);
    }

    .about-us .work-direction-item-first.pressed,
    .about-us .work-direction-item.pressed {
        box-shadow: none;
        background: none;
    }

/*  О НАС > НАША ЦЕЛЬ ——— small */
    .about-us .our-target .inner {
        align-items: flex-start;
        gap: 20px;
        padding: 32px 16px 38px 16px;
        max-width: 736px;
    }

    .about-us .our-target .title {
        align-items: flex-start;
        gap: 40px;
        padding: 0;
    }

    .about-us .our-target .text-block {
        align-items: flex-start;
        max-width: 640px;
        gap: 16px;
        margin-bottom: 24px;
    }

    .about-us .our-target h2 {
        font-size: var(--fz-24);
        line-height: 112%; /* 36px */
        letter-spacing: -0.5px;
        text-align: left;
    }

    .about-us .our-target h3 { 
        font-size: var(--fz-18);
        line-height: 112%; /* 20px */
        text-align: left;
        max-width: 640px;
    }

    .about-us .our-target p { 
        font-size: var(--fz-16);
        font-weight: 350;
        line-height: 132%; /* 24px */
        text-align: left;
        max-width: 640px;
    }

    .about-us .our-target img.arrow-inside {
        width: 28px;
    }

/*  О НАС > НАШИ ПРИНЦИПЫ ——— small */
    .about-us .our-principles {
        padding: 40px 16px 56px 16px;
        gap: 40px;
    }

    .about-us .our-principles h2 {
        font-size: var(--fz-24);
        line-height: 112%; /* 36px */
        letter-spacing: -0.5px;
    }

    .about-us .our-principles .inner {
        max-width: 736px;
    }

    .about-us .our-principles .element {
        flex: 0 0 112px;
    }

    .about-us .our-principles .info-card {
        flex: 1 1 320px;
        min-width: 320px;
        max-width: 640px;
        height: 96px;
        gap: 16px;
        padding: 8px 16px 8px 12px;
    }

    .about-us .our-principles .number {
        width: 36px;
        min-width: 36px;
        max-width: 36px;
    }

    .about-us .our-principles .text-info {
        max-width: 800px;
        gap: 4px;
        padding-top: 5px;
    }

    .about-us .our-principles .number p {
        font-size: 64px;
    }

    .about-us .our-principles h3 {
        font-size: var(--fz-14);
        line-height: 112%; /* 16px */
    }

    .about-us .our-principles p {
        font-size: var(--fz-13);
        line-height: 120%; /* 16px */
        padding: 0;
    }

/*  КОМАНДА ——— small */
    .team {
        padding: 32px 16px 36px 16px;
    }

    .team .inner {
        max-width: 736px;
        gap: 40px 0;
    }

    .team .inner .title {
        flex-direction: column;
        align-items: flex-start;
        min-width: 256px;
        max-width: 670px;
        gap: 32px;
    }

    .team .inner .title h1 {
        font-size: var(--fz-32);
        line-height: 112%; /* 36px */
        letter-spacing: -0.5px;
        padding-bottom: 4px;
    }

    .team .inner .key-info img {
        width: 60px;
        margin-right: 4px;
    }

    .team .inner .text-info {
        min-width: 320px;
        max-width: 670px;
        gap: 32px;
        padding-left: 0;
    }

    .team .subheading-2 {
        font-size: var(--fz-20);
        line-height: 110%;
    }

    .team .paragraph {
        font-size: var(--fz-13);
        padding-right: 12px;
    }

    .team .inner .secondary-info {
        --team-image-radius: 64px;
    }

    .team .inner .secondary-info .main-img {
        max-width: var(--content-width-s)
    }

    .team .inner .secondary-info .ident {
        max-width: 56px;
    }

/*  МЕСТО РАБОТЫ ——— small */
    .work-place {
        padding: 32px 16px 56px 16px;
    }

    .work-place .inner {
        max-width: 736px;
        gap: 64px;
    }

    .work-place .main-info {
        gap: 40px;
    }

    .work-place .main-info .subheading-2 {
        font-size: var(--fz-20);
        font-weight: 350;
        line-height: 115%; /* 28px */
    }

    .work-place .main-info .text-info {
        flex-wrap: wrap;
        flex: 1 0 0;
        gap: 16px 24px;
        margin-right: 0;
    }

    .work-place .main-info .lead-3 {
        font-size: var(--fz-13);
        line-height: 140%;
        letter-spacing: 0;
        flex: 1 0 300px;
        min-width: 300px;
        max-width: 640px;
    }

    .work-place .secondary-info {
        gap: 40px;
        flex-direction: column;
    }

    .work-place .secondary-info img {
        flex: 1 0 300px;
        min-width: 320px;
        max-width: 736px;
        height: 400px;
    }

    .work-place .secondary-info .card-list {
        flex: 1 0 320px;
        min-width: 320px;
        max-width: 736px;
    }

    .work-place .secondary-info .subheading-1 {
        font-size: var(--fz-40);
        font-weight: 350;
    }

    .work-place .secondary-info .paragraph {
        font-size: var(--fz-13);
        line-height: 135%; /* 16px */
        max-width: 600px;
    }

    .work-place .secondary-info .info-card,
    .work-place .secondary-info .info-card-top {
        height: 128px;
        padding: 10px 32px 16px 0;
        gap: 10px;
    }

/*  РАБОТА У НАС ——— small */
    .work-place .job-opportunities {
        padding-top: 8px;
        gap: 32px;
    }

    .work-place .job-opportunities h1 {
        font-size: var(--fz-32);
        line-height: 112%; /* 36px */
        letter-spacing: -0.5px;
        flex: 1 0 0;
        min-width: 256px;
        max-width: 320px;
        padding-bottom: 6px;
    }

    .work-place .job-opportunities .key-info {
        min-width: 320px;
        max-width: 736px;
        gap: 24px 56px;
        padding: 0;
    }

    .work-place .job-opportunities .element-gallery {
        min-width: 320px;
        max-width: 480px;
    }

    .work-place .job-opportunities .element {
        flex: 1 0 120px;
        min-width: 120px;
        max-width: 120px;
    }

    .work-place .job-opportunities .CTA {
        min-width: 320px;
        max-width: 584px;
        gap: 16px;
        padding: 16px 16px 0 0;
    }

    .work-place .job-opportunities .main-text {
        max-width: 576px;
        gap: 8px;
        margin-bottom: 8px;
    }

    .work-place .job-opportunities h4 {
        font-size: var(--fz-18);
        line-height: 112%; /* 20px */
        padding-bottom: 4px;
    }

    .work-place .job-opportunities p {
        font-size: var(--fz-14);
        font-weight: 300;
        line-height: 140%; /* 24px */
        letter-spacing: -0.1px;
        padding-bottom: 2px;
        margin: 0;
    }

    .work-place .job-opportunities .button {
        height: 40px;
        font-size: var(--fz-10);/
    }

/*  ЗАКУПКИ, ПРОТИВОДЕЙСТВИЕ КОРРУПЦИИ ——— small */
    .hangers {
        padding: var(--header-height-s) 16px 64px 16px;
        margin-top: var(--header-height-s);
    }

    .hangers .inner {
        max-width: 736px;
        gap: 56px 0;
    }

    .hangers h1 {
        font-size: var(--fz-32);
        line-height: 112%;
        letter-spacing: -0.5px;
        flex: 1 0 0;
        min-width: 256px;
        max-width: 360px;
        padding-bottom: 4px;
    }

    .hangers .subheading-2 {
        font-size: var(--fz-20);
        line-height: 110%;
    }

    .hangers .intro-info .paragraph {
        font-size: var(--fz-13);
        line-height: 135%;
        padding-right: 16px;
    }

    .hangers .intro-info .key-info {
        flex-direction: column;
        justify-content: space-between;
        align-items: flex-start;
        min-width: 256px;
        max-width: 670px;
    }

    .hangers .intro-info .key-info img {
        width: 60px;
    }

    .hangers .intro-info .text-info {
        min-width: 320px;
        max-width: 670px;
        gap: 32px;
        padding-left: 0;
    }

    .hangers .main-info {
        gap: 64px;
    }

    .hangers .main-info .plight {
        max-width: 480px;
        gap: 24px 2px;
        margin-bottom: 4px;
    }

    .hangers .main-info h3 {
        font-size: var(--fz-20);
    }

    .hangers .main-info h5 {
        font-size: var(--fz-14);
    }

    .hangers .main-info .plight .links-gallery {
        flex-direction: column;
        gap: 16px;
        margin-bottom: 8px;
    }

    .hangers .main-info .plight .link {
        font-size: var(--fz-13);
        text-underline-offset: 2px;
        text-align: center;
    }

    .hangers .main-info .plight .CTA {
        gap: 8px;
    }

    .hangers .main-info .plight .subtext {
        font-size: var(--fz-10);
    }

    .hangers .main-info .CTA .button,
    .hangers .key-info .hangers-card .button {
        font-size: var(--fz-10);
        height: 40px;
        gap: 8px;
        min-width: 280px;
    }

    .hangers .main-info .key-info .hangers-card .button img {
        width: 10px;
    }

    .hangers .main-info .key-info {
        max-width: 640px;
        gap: 24px;
        margin: 4px 0 6px 0;
    }

    .hangers .main-info .key-info .tab-header {
        gap: 24px;
    }

    .hangers .main-info .key-info .tab-button {
        height: 40px;
        padding: 8px 16px;
        font-size: var(--fz-10);
    }

    .hangers .main-info .key-info .tab-button.is-active {
        box-shadow: none;
    }

    .hangers .tab-panel {
        gap: 8px;
    }

    .hangers .hangers-card {
        box-shadow: 0 4px 8px -2px rgba(131,127,135,0.25);
        padding: 16px 12px 24px 12px;
    }

    .hangers .hangers-card .inner {
        gap: 12px;
    }

    .hangers .hangers-card .title-info {
        gap: 12px;
    }

    .hangers .hangers-card h4 {
        font-size: var(--fz-14);
    }

    .hangers .hangers-card .tables {
        gap: 16px 24px;
        margin-bottom: 24px;
    }

    .hangers .hangers-card .btn-link {
        max-height: 40px;
        padding: 12px 0;
        text-underline-offset: 4px;
    }

    .hangers .hangers-card .btn-link a {
        font-size: var(--fz-10);
    }

    .hangers .hangers-card .info-table {
        min-width: 244px;
    }

    .hangers .hangers-card .info-table .item {
        padding: 8px 0;
    }

    .hangers .hangers-card .subheading-4,
    .hangers .hangers-card .paragraph {
        font-size: var(--fz-13);
        line-height: 125%;
    }

    .hangers .hangers-card .title .subheading-4 {
        flex: 0 0 104px;
    }

/*  ПРОТИВОДЕЙСТВИЕ КОРРУПЦИИ ——— small */
    .anticorruption {
        padding: 40px 16px 64px 16px;
    }

    .anticorruption__inner {
        max-width: 640px;
        flex-wrap: wrap;
        gap: 32px;
    }

    .anticorruption__title {
        align-items: flex-start;
        max-width: 280px;
        gap: 4px;
    }

    .anticorruption .subtext {
        font-size: var(--fz-10);
    }

    .anticorruption h3 {
        font-size: var(--fz-20);
        text-align: left;
    }

    .anticorruption__main-info {
        min-width: 280px;
        max-width: 320px;
        gap: 16px;
        padding-top: 6px;
    }

    .anticorruption h5 {
        font-size: var(--fz-14);
    }

    .anticorruption__links-gallery {
        gap: 16px;
        margin-bottom: 24px;
    }

    .anticorruption__links-column {
        gap: 16px;
    }

    .anticorruption .link {
        font-size: var(--fz-13);
        text-underline-offset: 2px;
    }

    .anticorruption__CTA {
        gap: 8px;
    }

    .anticorruption__CTA .button {
        font-size: var(--fz-10);
        height: 40px;
        gap: 8px;
        min-width: 280px;
    }

/*  ФУТЕР ——— small */
    footer {
        padding: 0 16px;
    }

    footer .inner {
        max-width: 736px;
        gap: 60px;
        padding: 12px 0 28px 0;
    }

/*  ФУТЕР > БРЕНДИНГ ——— small */
    footer .footer-branding {
        flex-direction: row;
        justify-content: space-between;
        flex-wrap: wrap;
        gap: 12px 80px;
    }

    footer .footer-branding .text {
        max-width: 298px;
        gap: 1px;
        padding-top: 2px;
    }

    .footer-branding .text h4 {
        font-size: var(--fz-17);
        line-height: 108%; /* 18px */
        letter-spacing: -0.25px;
    }

    .footer-branding .text p {
        font-size: var(--fz-13);
        line-height: 100%; /* 13px */
        letter-spacing: -0.25px;
    }

/*  ФУТЕР > ИНФО ——— small */
    .footer-info {
        align-items: flex-start;
        justify-content: stretch;
        flex-wrap: wrap;
        gap: 56px 0;
    }

    .footer-info .сontact-info {
        flex-wrap: wrap;
        min-width: 280px;
        max-width: 298px;
        gap: 0;
    }

    .footer-info .office,
    .footer-info .сontact-info .contacts,
    .footer-info .сontact-info .social {
        flex: 1 0 0;
        gap: 24px;
        padding: 0;
        margin: 0;
    }

    .footer-info .office {
        min-width: 244px;
        max-width: 440px;
        padding: 0;
        margin-right: 32px;
    }

    .footer-info .сontact-info .contacts,
    .footer-info .сontact-info .social {
        min-width: 100px;
        max-width: 196px;
    }

    .footer-info .сontact-info .social {
        max-width: 100px;
        margin-right: 8px;
    }

    .footer-info .text-info {
        gap: 6px;
    }

    .footer-info h4 {
        font-size: var(--fz-18);
        line-height: 112%; /* 20px */
    }

    .footer-info p,
    .footer-info a {
        font-size: var(--fz-14);
        line-height: 135%; /* 20px */
        letter-spacing: -0.25px;
    }

    .footer-info .social-icons {
        gap: 8px;
        padding-left: 1px;
        margin-top: 0;
        height: 42px;
    }

    .footer-info .social-icons a {
        height: 32px;
    }

/*  ФУТЕР > МЕТА-ИНФО ——— small */
    .footer-meta {
        max-width: 736px;
        padding: 0 0 16px 0;
    }

    .footer-meta .inner {
        flex-wrap: wrap;
        gap: 28px;
        padding: 24px 0;
    }

    .footer-meta .key-info {
        flex-wrap: wrap;
        justify-content: stretch;
        flex: 1 0 236px;
        max-width: 236px;
        gap: 12px;
        padding-left: 0;
    }

    .footer-meta .curators-info {
        gap: 16px;
    }

    .footer-meta .curators-logo {
        gap: 6px;
        min-width: 120px;
    }

    .footer-meta .curators-logo img.gerb {
        height: 30px;
        width: 32px;
    }

    .footer-meta .curators-logo .divider-wrapper {
        height: 32px;
    }

    .footer-meta .curators-logo img.wings {
        height: 20px;
        width: 48px;
        margin: 0 0 0 2px;
    }

    .footer__links {
        gap: 2px;
    }

    .footer-meta .text-info {
        flex: 1 0 306px;
        min-width: 280px;
        max-width: 306px;
        gap: 16px;
    }

    .footer-meta .text-info p {
        padding-left: 6px;
    }

    .footer-meta .special-info {
        gap: 3px;
        padding: 0 20px 0 0;
    }

    .footer-meta .special-info p {
        padding-left: 0;
    }

    .footer-meta p,
    .footer-meta a,
    .footer-meta .subtext a {
        line-height: 140%;
    }

/*  ADAPTIVE -- LIGHTBOX -- SMALL */
    .lightbox {
        width: calc(100vw - 16px);
        max-height: calc(100vh - 16px);
    }

    .lightbox__dialog {
        width: calc(100vw - 24px);
        gap: 8px;
    }

    .lightbox__media img {
        max-height: calc(100vh - 220px);
    }

    .lightbox__close,
    .lightbox__nav{
        width: var(--btn-height-m);
        height: var(--btn-height-m);
    }

    .lightbox__close {
        top: 0px;
        right: 0px;
        background: var(--grey-bg-dark);
        opacity: 0.5;
    }

    .lightbox__nav {
        top: 40%;
        bottom: calc(100% + 8px);
        transform: none;
    }

    .lightbox__nav--prev {
        left: 0;
        background: var(--grey-bg-dark);
        opacity: 0.5;
    }

    .lightbox__nav--next {
        right: 0;
        background: var(--grey-bg-dark);
        opacity: 0.5;
    }

    .lightbox__thumbs {
        justify-content: flex-start;
        gap: 8px;
        padding: 0;
    }

    .lightbox__thumb {
        width: 72px;
        height: 72px;
    }

/*  ВАКАНСИИ > ХИРО БЛОК ——— small */
    .vacancy-hero {
        background-image: url(../img/bg/MP-hero_bg_v1.1-mobile.jpg);
        max-height: 900px;
        max-width: 768px;
        margin-top: var(--header-height-s);
    }

    .vacancy-hero .inner {
        max-width: 400px;
        padding: 0 16px;
    }

    .vacancy-hero .key-info {
        flex-wrap: wrap;
        justify-content: flex-start;
        gap: 10px;
        padding-bottom: 4px;
    }

    .vacancy-hero .logo {
        width: 64px;
        margin: 0 4px 0 2px;
    }

    .vacancy-hero .divider-wrapper {
        display: flex;
        flex-direction: column;
        align-items: center;
        height: 64px;
        padding: 0 1px 2px 1px;
    }

    .vacancy-hero .text-info {
        max-width: min-content;
        padding: 0;
    }

    .vacancy-hero h1 {
        font-size: var(--fz-17);
        line-height: 108%; /* 17px */
        letter-spacing: -0.25px;
    }

    .vacancy-hero p,
    .vacancy-hero .subtext {
        font-size: var(--fz-12);
        line-height: 116%;
        padding: 0;
    }

    .vacancy-hero .subtext {
        width: 100%;
        min-width: fit-content;
        max-width: 270px;
        margin-left: 16px;
    }   

/*  ВАКАНСИИ > АКТУАЛЬНЫЕ ПРЕДЛОЖЕНИЯ ——— small */
    .vacancies {
        padding: 32px 16px 16px 16px;
    }

    .vacancies .inner {
        max-width: 736px;
        gap: 40px;
    }

    .vacancies .vacancy-header {
        max-width: 736px;
        gap: 32px;
    }

    .vacancy-header .key-info {
        max-width: 310px;
        gap: 12px;
    }

    .vacancies .vacancy-header img.logo  {
        width: 40px;
        min-width: 40px;
        margin: 4px 2px 8px 0;
    }

    .vacancies .vacancy-header .divider-wrapper {
        height: 80px;
        padding: 8px 0 5px 0;
    }

    .vacancy-header .key-info h1 {
        font-size: var(--fz-17);
        line-height: 104%;
        letter-spacing: -0.25px;
    }

    .vacancies .vacancy-header h2 {
        font-size: var(--fz-24);
        line-height: 115%;
        max-width: 180px;
        margin: 2px 0 0 0;
        margin: 0;
    }

    .vacancies .vacancy-header p {
        font-size: var(--fz-13);
        line-height: 120%;
    }

/*  ADAPTIVE —— VACANCY PAGE —— EMPTY | SMALL */
    .vacancies .vacancy__empty {
        align-items: flex-start;
        gap: var(--text-info-gap-s);
        max-width: none;
    }

    .vacancies .vacancy__empty h3,
    .vacancies .vacancy__empty p {
        text-align: left;
    }

/*  ВАКАНСИИ > СПИСОК ОТДЕЛОВ ——— small */
    .department-list {
        align-items: flex-start;
        max-width: 688px;
    }

    .department-list .content {
        min-height: 48px;
        gap: 16px;
        padding: 6px 12px 4px 8px;
    }

    .department-list .key-info {
        align-items: flex-start;
        gap: 10px;
    }

    .department-list .number {
        flex: 0 0 24px;
        padding: 2px 0 0 0;
    }

    .department-list .number p {
        font-size: 36px;
        line-height: 80%;
    }

    .department-list .text-info {
        gap: 4px;
    }

    .department-list .subheading-3 {
        font-size: var(--fz-14);
        line-height: 112%; /* 15.68px */
        letter-spacing: -0.16px;
    }

    .department-list .subtext {
        font-size: var(--fz-10);
        line-height: 116%; /* 11.6px */
    }

    .department-list .content .arrow-down {
        width: 32px;
        margin-bottom: 4px;
    }

    /* pressed состояние */
    .department-list .department-first.pressed,
    .department-list .department.pressed {
        gap: px;
        padding-bottom: 16px;
    }

/*  ВАКАНСИИ > СПИСОК ОТДЕЛОВ > СПИСОК ВАКАНСИЙ (раскрывающаяся часть) ——— small */
    .department-list .vacancy-list {
        max-width: 600px;
    }

    .vacancy-list a.vacancy-first,
    .vacancy-list a.vacancy,
    .vacancy-list a.vacancy-last {
        max-width: 512px;
        min-height: 56px;
        gap: 16px;
        padding: 4px 12px 4px 8px;
    }

    .vacancy-list a .text-info {
        gap: 2px;
        padding: 2px 0;
    }

    .vacancy-list h4 {
        font-size: var(--fz-14);
    }

    .vacancy-list a .arrow-forward {
        width: 32px;
    }

/* отключаем плавность и эффекты hover на мобильных */
    .vacancy-list a,
    .vacancy-list a .arrow-forward,
    .department-list .content,
    .department-list .content .arrow-down {
        transition: none !important; /* убираем анимации */
        transform: none !important;
    }

/*  ВАКАНСИИ > О НАС ——— small */
    .vacancy-about-us {
        padding: 32px 16px;
    }

    .vacancy-about-us .inner {
        max-width: 736px;
        gap: 36px;
    }

    .vacancy-about-us h1 {
        font-size: var(--fz-32);
        line-height: 125%; /* 40px */
        letter-spacing: -0.5px;
        padding-bottom: 8px;
    }

    .vacancy-about-us .vacancy-institute,
    .vacancy-about-us .vacancy-team {
        min-width: 290px;
        flex-wrap: wrap;
        gap: 24px;
        padding: 8px 0 16px 0;
        scroll-margin-top: 48px;
    }

    .vacancy-about-us .vacancy-institute .text-info,
    .vacancy-about-us .vacancy-team .text-info {
        max-width: 600px;
        gap: 12px 48px;
    }

    .vacancy-about-us h2 {
        font-size: var(--fz-24);
        line-height: 115%; /* 27,6px */
        min-width: 280px;
    }

    .vacancy-about-us .vacancy-institute .main-text,
    .vacancy-about-us .vacancy-team .main-text {
        min-width: 280px;
        max-width: 640px;
        gap: 12px;
        padding-top: 0;
    }

    .vacancy-about-us .lead-2 {
        font-size: var(--fz-16);
        line-height: 140%; /* 32.4px */
    }

    .vacancy-about-us .subtext {
        font-size: var(--fz-10);
        line-height: 116%;
    }

/*  ВАКАНСИИ > ГАЛЕРЕЯ ЭЛЕМЕНТОВ medium ——— */
    .vacancy-about-us .element-gallery .element img {
        max-width: 64px;
    }

    .vacancy-about-us .element-gallery .logo {
        width: 32px;
        margin: 14px 16px 12px 16px;
    }

/*  ВАКАНСИИ > РАБОТА У НАС > МЫ ПРЕДЛАГАЕМ ——— small */
    .vacancy-about-us .our-offer {
        gap: 12px;
        padding: 32px 0 20px 0;
    }

    .vacancy-about-us .our-offer h2 {
        font-size: var(--fz-24);
        line-height: 115% /* 27.6px */;
    }

    .vacancy-about-us .our-offer .key-info,
    .vacancy-about-us .our-offer .info-item-subtext {
        max-width: 400px;
        padding: 0;
        gap: 8px;
    }

    .vacancy-about-us .our-offer .key-info {
        margin-left: 4px;
    }

    .vacancy-about-us .our-offer .info-item,
    .vacancy-about-us .our-offer .main-info {    
        gap: 8px;
        padding: 4px 0;
    }

    .vacancy-about-us .our-offer img {
        width: 48px;
    }

    .vacancy-about-us .our-offer .lead-2 {
        font-size: var(--fz-16);
        line-height: 135%; /* 23.76px */
        font-weight: 300;
        letter-spacing: 0;
    }

    .vacancy-about-us .our-offer .subtext {
        font-size: var(--fz-13);
        line-height: 120%;
        letter-spacing: -0.26px;
    }

    .vacancy-about-us .our-offer .secondary-info {
        display: flex;
        gap: 4px;
        padding: 0 0 0 54px;
    }

/* ВАКАНСИИ > НАШИ КУРАТОРЫ ——— */
    .vacancy-about-us .curators {
        padding: 0;
        scroll-margin-top: 48px;
    }

    .vacancy-about-us .curators .inner {
        max-width: 736px;
        gap: 88px 212px;
    }

    .vacancy-about-us .curators .title {
        padding-top: 10px;
    }

/*  ВАКАНСИИ > КОНТАКТЫ ——— */
    .vacancy-about-us .contacts  {
        padding: 10px 0 0 0;
        scroll-margin-top: 80px;
    }

    .vacancy-about-us .contacts .inner {
        gap: 20px 64px;
        max-width: 688px;
    }

    .vacancy-about-us .contacts .text-info {
        max-width: 180px;
        gap: 16px 32px;
    }

    .vacancy-about-us .contacts .main-text {
        gap: 8px;
    }

    .vacancy-about-us .cta {
        min-width: 296px;
        max-width: 640px;
        gap: 28px;
        padding: 5px 0 4px 0;
    }

    .vacancy-about-us .cta h3 {
        font-size: var(--fz-16);
    }

    .vacancy-about-us .cta .text-block {
        gap: 10px;
        padding-bottom: 2px;
    }

    .vacancy-about-us .button {
        height: 40px;
        max-width: 261px;
        padding: 8px 32px;
        font-size: var(--fz-10);
}

/*  СТРАНИЦА ВАКАНСИИ > ШАПКА ВАКАНСИИ ——— small */
    .vacancy-main-info {
        padding: 32px 16px 48px 16px;
        gap: 32px;
    }

    .vacancy-main-info .vacancy-header {
        width: 100%;
        max-width: 440px;
        max-height: fit-content;
        gap: 12px;    
    }

    .vacancy-main-info .vacancy-header .ident {
        gap: 1px;
        margin: 0;
    }

    .vacancy-main-info .vacancy-header .ident img {
        width: 48px;
        max-height: 44px;
        aspect-ratio: 1/1;
    }

    .vacancy-main-info .vacancy-header .lead-3 {
        font-size: 11px;
        font-weight: 300;
        line-height: 115%; /* 14.4px */
        letter-spacing: -0.24px;
    }

    .vacancy-main-info .divider-wrapper {
        display: flex;
        flex-direction: column;
        align-items: center;
        height: 56px;
        width: 2px;
        padding: 0;
        margin: 2px;
    }

    .vacancy-main-info .divider {
        height: 100%;
        align-items: center;
        outline: 0.5px solid var(--grey-text-super-light);
        opacity: 0.5;
        margin: 0;
    }

    .vacancy-main-info .text-info {
        display: flex;
        flex: 1 0 0;
        flex-direction: column;
        align-items: flex-start;
        max-width: 344px;
        gap: 2px;
        padding: 0px 0 0 0;
    }

    .vacancy-main-info h1 {
        font-size: var(--fz-20);
        line-height: 110%; /* 22px */
        letter-spacing: -0.6px;
    }

/*  СТРАНИЦА ВАКАНСИИ > ОПИСАНИЕ ВАКАНСИИ ——— small */
    .vacancy-main-info .key-info {
        width: 100%;
        max-width: 440px;
        border-top: 0.5px solid var(--grey-text-super-light);
        gap: 24px;
        padding-top: 32px;
    }

    .vacancy-main-info .key-info .text-info {
        display: flex;
        flex-direction: column;
        align-items: center;
        width: 100%;
        max-width: 480px;
        gap: 12px;
    }

    .vacancy-main-info .key-info .text-info h2 {
        font-size: 24px;
        line-height: 115%; /* 27,6px */
    }

    .vacancy-main-info .key-info .text-info p {
        font-size: var(--fz-14);
        line-height: 140%; /* 19.6px */
        letter-spacing: -0.14px;
    }

/*  СТРАНИЦА ВАКАНСИИ > РАСКРЫВАЮЩЕЕСЯ МЕНЮ ——— small */
    .vacancy-main-info .vacancy-info {
        max-width: 400px;
        min-width: 340px;
        gap: 16px;
        padding: 8px 0 0 0;
    }

    .vacancy-main-info .vacancy-info .require,
    .vacancy-main-info .vacancy-info .require-skills {
        max-width: 400px;
        gap: 20px;
        padding: 6px 0;
    }

    .vacancy-main-info .vacancy-info h3 {
        font-size: var(--fz-14);
        letter-spacing: 0;
        line-height: 112%; /* 16px */
    }

    .vacancy-main-info .shevron-down {
        width: 16px;
        transition: none !important;
    }

/* список */
    .vacancy-main-info ul.body {
        gap: 12px;
    }

    .vacancy-main-info p,
    .vacancy-main-info ul.body li {
        font-size: var(--fz-13);
    }

    .vacancy-main-info ul.body li {
        padding-left: 14px;
    }

    .vacancy-main-info ul.body li::before {
        font-size: var(--fz-18);
    }

/* скрытый список */
    .vacancy-main-info .info-list {
        gap: 12px;
        max-width: 400px;
        padding: 0 16px 16px 16px;
        transition: none !important;
    }

    .vacancy-main-info .require-skills .info-list {
        padding: 0 16px;
    }

    .require-skills .info-list .require-type {
        gap: 4px;
    }

    .vacancy-main-info .require-skills .info-list h5 {
        font-size: var(--fz-12);
        letter-spacing: -0.25px;
    }

/* активный */
    .vacancy-main-info .require.active .info-list {
        padding-bottom: 8px;
    }

    .vacancy-main-info .vacancy-info .require-skills.active {
        padding-bottom: 0;
    }

    .vacancy-main-info .require-skills.active .info-list p {
        padding-left: 14px;
    }

    .vacancy-main-info .require-skills.active ul.body {
        gap: 12px;
        padding: 0 0 0 13px;
    }

/* кнопки */
    .vacancy-main-info .button-wrapper {
        flex-wrap: wrap;
        max-width: 640px;
        gap: 4px;
    }

    .vacancy-main-info .button,
    .vacancy-main-info .button-secondary {
        height: 40px;
        min-width: 320px;
        max-width: 400px;
        padding: 8px 32px;
    }

    .vacancy-main-info .button-secondary {
        border: 0.5px solid var(--pink-bg-super-dark);
    }

    .vacancy-main-info .button:hover,
    .vacancy-main-info .button-secondary:hover {
        transition: none !important; /* убираем анимации */
        transform: none !important;
    }

/*  СТРАНИЦА ВАКАНСИИ > РАБОТА У НАС ——— small */
    .work-with-us {
        max-width: 768px;
        gap: 32px;
        padding: 0 16px 48px 16px;
    }

    .work-with-us h3 {
        font-size: var(--fz-18);
        line-height: 112%; /* 20.16px */
    }

/*  СТРАНИЦА ВАКАНСИИ > РАБОТА У НАС > МЫ ПРЕДЛАГАЕМ ——— small */
    .work-with-us .our-offer {
        max-width: 400px;
        border-top: 0.5px solid var(--grey-text-super-light);
        gap: 16px;
        padding: 40px 0 4px 0;
    }

    .work-with-us .our-offer .key-info,
    .work-with-us .our-offer .info-item-subtext {
        max-width: 360px;
        gap: 2px;
        padding: 0 0 4px 0;
    }

    .work-with-us .our-offer .info-item,
    .work-with-us .our-offer .main-info {
        gap: 8px;
    }

    .work-with-us .our-offer img {
        width: 48px;
    }

    .work-with-us .our-offer .lead-2 {
        font-size: var(--fz-14);
        letter-spacing: -0.25px;
    }

    .work-with-us .our-offer .secondary-info {
        gap: 4px;
        padding: 0 2px 0 56px;
    }

    .work-with-us .our-offer .subtext {
        font-size: var(--fz-10);
        font-weight: 350;
        line-height: 140%;
    }

    .work-with-us .other,
    .work-with-us .contacts {
        max-width: 400px;
        gap: 16px;
        padding: 40px 0 16px 0;
    }

    .work-with-us .element-gallery {
        max-width: 400px;
    }

    .work-with-us .element {
        flex: 0 0 132px;
    }

    .work-with-us .other .main-text,
    .work-with-us .contacts .main-text {
        max-width: 400px;
        gap: 8px;
        padding-bottom: 16px;
    }

    .work-with-us .button {
        height: 40px;
        max-width: 400px;
    }

/*  ADAPTIVE —— COOKIES | SMALL */
    .cookie-popup {
        padding: 24px 16px;
    }

    .cookie-popup__inner {
        gap: 20px;
    }

    .cookie-popup__text {
        font-size: var(--fz-14);
        line-height: 135%;
    }

/*  СТРАНИЦА КОНКУРСА > HEADER ——— small */
    header.wide-header {
        max-width: 100vw;
        height: 48px;
    }

    header.wide-header .content-wrapper {
        max-width: 1200px;
        padding: 0;
        margin: 0 16px;
    }

/*  СТРАНИЦА КОНКУРСА > HEADER > МЕНЮ ——— small */
    #menu li a {
        min-height: 48px;
        font-size: var(--fz-10);
    }

/*  СТРАНИЦА КОНКУРСА > HERO ——— small */
    .konkurs-hero {
        max-width: 767,9px;
        padding: 24px 16px;
        margin-top: var(--header-height-s);
    }

    .konkurs-hero .inner {
        max-width: 736px;
        gap: 40px;
    }

    .konkurs-hero .main-info {
        flex-direction: column;
        row-gap: 56px;
        height: fit-content;
    }

    .konkurs-hero .key-info {
        flex: 1 1 320px;
        min-width: 320px;
        max-width: 480px;
        justify-content: flex-start;
        min-height: 0;
        max-height: fit-content;
        gap: 12px;
    }

    .konkurs-hero .title {
        gap: 10px;
    }

    .konkurs-hero img {
        flex: 1 1 320px;
        min-width: 320px;
        max-width: 100vw;
        min-height: 0;
        max-height: 460px;
        margin: 0;
    }

    .konkurs-hero .key-info h1 {
        font-size: var(--fz-40);
        line-height: 112%;
    }

    .konkurs-hero .key-info .lead-1 {
        font-family: var(--main-font);
        font-size: var(--fz-18);
        line-height: 132%; /* 24px */
        letter-spacing: -0.4px;
        padding-right: 20px;
    }

    .konkurs-hero p {
        font-size: var(--fz-24);
        line-height: 115% /* 28px */;
        padding-right: 20px;
    }

    .konkurs-hero .secondary-info h1 {
        font-size: var(--fz-40);
        line-height: 108%; /* 54px */
    }

    .konkurs-hero h3 {
        font-size: var(--fz-24);
        font-weight: 450;
        line-height: 115%; /* 27.6px */
        letter-spacing: -0.5px;
        color: var(--pink-text-black);
        margin-bottom: 4px;
    }

    .konkurs-hero .secondary-info {
        max-width: 720px;
        row-gap: 0;
        margin-top: 32px;
        flex-direction: row;
        justify-content: flex-start;
        gap: 32px;
    }

    .konkurs-hero .event-date {
        flex: 1 0 320px;
        min-width: 320px;
        max-width: 560px;
        gap: 8px;
        padding-right: 40px;
        margin: 0;
    }

    .konkurs-hero .cta {
        flex: 1 0 320px;
        min-width: 320px;
        max-width: 720px;
        justify-content: flex-start;
        gap: 20px;
        margin: 0;
    }

    /* кнопки */
    .konkurs-hero .button-wrapper {
        max-width: max-content;
    }

    .konkurs-hero .button,
    .konkurs-hero .button-secondary {
        height: 40px;
        flex: 1 0 320px;
        min-width: 320px;
        max-width: 560px;
    }

    .konkurs-hero .button:hover,
    .konkurs-hero .button-secondary:hover {
        min-width: 240px;
    }

/*  СТРАНИЦА КОНКУРСА > INTRO ——— small */
    .konkurs-intro {    
        padding: 24px 16px;
    }

    .konkurs-intro .inner {
        gap: 32px;
    }

    .konkurs-intro h1 {
        flex: 1 0 320px;
        min-width: 320px;
        font-size: var(--fz-32);
        line-height: 112%; /* 36px */
        font-weight: 475;
        letter-spacing: -0.5px;
        padding-bottom: 4px;
    }

    .konkurs-intro .organisation {
        align-items: flex-start;
        max-width: 100vw;
        padding: 6px 0 20px 0;
        row-gap: 20px;
    }

    .konkurs-intro .key-info {
        flex: 1 0 320px;
        min-width: 320px;
        max-width: 640px;
        gap: 0;
        padding: 0;
        margin-left: 0;
    }

    .konkurs-intro .element-gallery {
        min-width: 300px;
        max-width: max-content;
        gap: 40px;
        padding: 8px 0;
    }

    .konkurs-intro .element {
        min-width: 88px;
        max-width: 128px;
    }

    .konkurs-intro .big-text {
        font-size: var(--fz-28);
        font-weight: 450;
        text-align: left;
        line-height: 120%; /* 38px */
        letter-spacing: -0.6px;
        padding: 12px 0 10px 0;
        text-wrap: wrap;
    }

/* СТРАНИЦА КОНКУРСА > РЕЗУЛЬТАТЫ ——— small */
    .summary {
        scroll-margin-top: 32px;
        padding: 32px 16px 40px 16px;
    }

    .summary .inner {
        gap: 32px;
    }

    .summary .inner h1 {
        font-size: var(--fz-32);
        line-height: 112%;
    }

    .summary .inner .main-info {
        max-width: 360px;
        gap: 20px;
    }

    .summary .inner .main-info .text-info {
        gap: 24px;
    }

    .summary .inner .main-info .text-info .key-info {
        max-width: 100px;
        gap: 4px;
    }

    .summary .inner .main-info .text-info .key-info h2 {
        font-size: var(--fz-40);
    }

    .summary .inner .main-info .text-info .key-info p {
        font-size: var(--fz-13);
    }

    .summary .inner .subheading-3 {
        font-size: var(--fz-18);
        max-width: 360px;
    }

    .summary .inner .card-list {
        max-width: 736px;
        padding: 0;
    }

    .summary .inner .card-list .subheading-4 {
        font-size: var(--fz-13);
        font-weight: 450;
        letter-spacing: -0.25px;
        padding: 8px;
    }

    .summary .inner .card-list .info-card {
        padding: 12px 10px;
    }

    .summary .inner .card-list .info-card .inner .text-info {
        min-width: 280px;
    }

    .summary .inner .info-card .subheading-3 {
        line-height: 125%;
        padding-bottom: 3.5px;
    }

    .summary .inner .info-card .paragraph {
        font-size: var(--fz-12);
        line-height: 125%;
    }

    .summary .inner .info-card .paragraph--secondary {
        padding: 0 0 0 0.5px;
    }

    .summary .inner .info-card .number {
        font-size: 40px;
        max-width: 100px;
        margin: 2px 2px 0 0;
    }

    .summary .inner .card-list .secondary-info {
        gap: 12px;
        padding: 32px 0 36px 0;
    }

    .summary .inner .card-list .subheading-3--secondary {
        max-width: 800px;
    }

    .summary .inner .card-list .paragraph--tetryary {
        max-width: 720px;
    }

    .summary .inner .card-list .info-card--bottom {
        border: none;
    }

    .summary .inner .card-list .info-card--bottom p {
        color: var(--grey-text-light);
    }

    .summary .inner .CTA {
        gap: 24px;
    }

    .summary .inner .button {
        height: 40px;
        max-width: 300px;
    }

/*  СТРАНИЦА КОНКУРСА > ОСНОВНЫЕ ЗАДАЧИ ——— small */
    .primary-info {
        padding: 24px 16px;
    }

    .primary-info .inner {
        gap: 76px;
    }

    .primary-info h1 {
        font-size: var(--fz-32);
        line-height: 112%; /* 36px */
        padding-bottom: 4px;
        width: 100%;
        border-bottom: 0.5px solid var(--grey-text-super-light);
    }

    .primary-info h3 {
        font-size: var(--fz-18);
        line-height: 112%; /* 20px */
        padding-bottom: 4px;
    }

    .primary-info .main-tasks {
        gap: 48px;
        padding: 0;
        border: none;
    }

    .primary-info .main-tasks .key-info {
        flex-direction: column;
        gap: 56px;
    }

    .primary-info .main-tasks img {
        min-width: 200px;
        max-width: 240px;
    }

    .primary-info .main-tasks .card-list {
        min-width: 320px;
        max-width: 720px;
        border-bottom: 0.5px solid var(--grey-text-super-light);
    }

    .primary-info .main-tasks .info-card {
        justify-content: flex-start;
        flex-wrap: wrap;
        border-top: 0.5px solid var(--grey-text-super-light);
        max-width: 100vw;
        gap: 8px 20px;
        padding: 15px 12px 24px 10px;
    }

    .primary-info .main-tasks .info-card .number {
        max-width: 48px;
        max-height: 76px;
    }

    .primary-info .main-tasks .info-card .text-info {
        max-width: 536px;
        gap: 3px;
        padding-top: 7px;
        height: auto;
    }

    .primary-info .main-tasks .info-card .number p {
        font-size: 90px;
    }

    .primary-info .main-tasks .info-card p {
        font-size: var(--fz-18);
        line-height: 132%; /* 31px */
        padding: 0;
    }

/*  СТРАНИЦА КОНКУРСА > ЦЕЛИ ——— small */
    .primary-info .target {
        gap: 48px;
        padding: 0;
        border: none;
    }

    .primary-info .target .key-info {
        gap: 12px;
        padding: 8px 0 4px 0;
        border: none;
    }

    .primary-info .target h3 {
        max-width: 560px;
    }

    .primary-info .target .info-list {
        max-width: max-content;
        padding-bottom: 16px;
        margin-left: 20px;
        margin-right: 0;
    }

    .primary-info .target .info-list ul.body {
        gap: 12px;
    }

    .primary-info .target .info-list ul.body li {
        font-size: var(--fz-18);
        line-height: 132%; /* 24px */
        padding-left: 14px;
    }

    .primary-info .target .info-list ul.body li::before {
        font-size: var(--fz-18);
    }

    .primary-info .target .element-gallery {
        gap: 32px;
        padding: 16px 16px 0 16px;
    }

    .primary-info .target .element-gallery img {
        flex: 1 1 120px;
        min-width: 120px;
        max-width: 128px;
    }

/*  СТРАНИЦА КОНКУРСА > КОМИССИЯ ——— small */
    .primary-info .comission {
        padding: 24px 0 32px 0;
        border: none;
    }

    .primary-info .comission .inner {
        gap: 64px;
    }

    .primary-info .comission h1 {
        font-size: var(--fz-32);
        line-height: 108%; /* 51.84px */
        padding-bottom: 8px;
    }

    .primary-info .comission h2 {
        font-size: var(--fz-24);
        line-height: 112%; /* 36px */
        letter-spacing: -0.5px;
    }

    .primary-info .comission h3 {
        font-weight: 500;
    }

    .primary-info .comission .main-info {
        gap: 24px;
    }

    .primary-info .comission .info-list {
        gap: 8px;
        padding-bottom: 16px;
    }

    .primary-info .comission .info-list .info-card {
        gap: 20px;
        padding: 4px 0 0 0;
    }

    .primary-info .comission .info-list h4 {
        font-size: var(--fz-13);
        font-weight: 400;
        line-height: 115%; /* 28px */
        max-width: 240px;
        min-width: 238px;
        padding: 2px 0;
    }

    .primary-info .comission .text-info {
        flex: 1 0 0;
        min-width: 290px;
        max-width: 736px;
        gap: 28px;
    }

    .primary-info .comission .info-list .key-info {
        min-width: 290px;
        max-width: 736px;
        gap: 0;
    }

    .primary-info .comission .info-list p {
        font-size: var(--fz-14);
        line-height: 130%; /* 40px */
    }

    .primary-info .comission .button {
        height: 40px;
        width: 100%;
        max-width: 736px;
        padding: 8px 32px;
        font-size: var(--fz-10);
    }

/*  СТРАНИЦА КОНКУРСА > УСЛОВИЯ УЧАСТИЯ ——— small */
    .participation-terms {
        padding: 24px 16px 16px 16px;
    }

    .participation-terms .inner {
        gap: 64px;
    }

    .participation-terms h1 {
        font-size: var(--fz-32);
        line-height: 112%; /* 36px */
        padding-bottom: 4px;
        flex: 1 0 280px;
        min-width: 280px;
        max-width: 480px;
        padding: 0 40px 4px 0;
    }

    .participation-terms h2 {
        font-size: var(--fz-24);
        line-height: 115%; /* 28px */
    }

    .participation-terms h3 {
        font-size: var(--fz-18);
        line-height: 112%; /* 20px */
        letter-spacing: 0;
        flex: 1 0 280px;
        min-width: 280px;
        max-width: 480px;
        gap: 40px;
    }

    .participation-terms .info-list p {
        font-size: var(--fz-14);
        font-weight: 350;
        line-height: 140%; /* 20px */
    }

    .participation-terms .lead-1 {
        font-size: var(--fz-24);
        font-weight: 400;
        line-height: 128%; /* 30.72px */
        letter-spacing: -0.48px;
    }

    .participation-terms .key-info {
        align-items: stretch;
        gap: 60px;
        row-gap: 32px;
    }

    .participation-terms .key-info .info-list {
        flex: 1 0 320px;
        min-width: 320px;
        max-width: 480px;
        gap: 24px;
        padding-top: 14px;
        margin-right: 16px;
    }

    .participation-terms .key-info .text-info {
        gap: 8px;
    }

    .participation-terms .secondary-info .text-info {
        min-height: 96px;
        gap: 24px 64px;
        padding: 8px 16px 10px 0;
        flex-wrap: wrap;

    }

    .participation-terms .secondary-info .text-info p {
        font-size: var(--fz-18);
        line-height: 132% /* 24px */;
        flex: 1 0 320px;
        min-width: 320px;
        max-width: 480px;
    }

/*  СТРАНИЦА КОНКУРСА > ПАРТНЁРЫ ——— small */
    .partners {
        padding: 22px 16px;
    }

    .partners .inner {
        padding: 8px 0 4px 0;
        gap: 40px;
    }

    .partners h1 {
        font-size: var(--fz-30);
        font-weight: 475;
        line-height: 112%; /* 34px */
        letter-spacing: -1.2px;
        padding-bottom: 6px;
    }

    .partners .lead-1 {
        font-size: var(--fz-18);
        line-height: 132%; /* 24px */
    }

    .partners .card-gallery {
        max-width: 100vw;
        gap: 24px 32px;
    }

    .partner-card {
        flex: 1 1 280px;
        min-width: 280px;
        max-width: 480px;
        gap: 12px 0;
        padding: 12px 32px 12px 0;
        margin-right: auto;
    }

    .partner-card img {
        max-width: 64px;
    }

/*  СТРАНИЦА КОНКУРСА > ОСНОВНАЯ ИНФА ——— small */
    .contact-info {
        padding: 24px 16px;
    }

    .contact-info .inner {
        gap: 40px;
    }

    .contact-info h1 {
        font-size: var(--fz-32);
        line-height: 112%; /* 36px */
        letter-spacing: -0.5px;
        margin-bottom: 8px;
    }

    .contact-info .konkurs-info {
        max-width: 100vw;
        gap: 8px 96px;
    }

    .contact-info .konkurs-info h3 {
        font-size: var(--fz-18);
        font-weight: 450;
        line-height: 115%; /* 28px */
    }

    .contact-info .konkurs-info .lead-1 {
        font-size: var(--fz-18);
        font-weight: 300;
        line-height: 135%;
        letter-spacing: -0.7px;
    }

    .contact-info .konkurs-info .contacts {
        flex: 1 0 320px;
        min-width: 320px;
        max-width: 100vw;
        gap: 18px;
        padding: 16px 0 10px 0;
        border-top: 0.5px solid var(--pink-text-super-light);
    }

    .contact-info .konkurs-info .email-info {
        gap: 12px;
        min-height: 24px;
    }

    .contact-info .konkurs-info .email-info img {
        width: 24px;
    }

    .contact-info .konkurs-info .cta {
        flex: 1 0 320px;
        min-width: 320px;
        max-width: 736px;
        gap: 24px;
        padding-top: 16px;
        border-top: 0.5px solid var(--pink-text-super-light);
    }

    /* кнопки */
    .konkurs-info .button-wrapper {
        max-width: 736px;
    }

    .konkurs-info .button,
    .konkurs-info .button-secondary {
        height: 40px;
        flex: 1 0 268px;
        min-width: 268px;
        max-width: 480px;
    }

/*  СТРАНИЦА КОНКУРСА > ФУТЕР ——— small */
    footer.wide-footer {
        padding: 16px 16px 24px 16px;
    }

    footer.wide-footer .footer-branding {
        gap: 24px 72px;
        padding: 0 0 32px 0;
        flex-wrap: wrap;
    }

    footer.wide-footer img.logo {
        width: 36px;
        margin: 0 1px;
    }

    footer.wide-footer .logo-link {
        display: flex;
        max-width: 240px;
        width: 100%;
        margin-right: auto;
    }

    footer.wide-footer .footer-branding .text-info {
        flex: 1 0 320px;
        min-width: 320px;
        max-width: 368px;
        gap: 0;
        padding: 2px 0 0 0;
    }

    footer.wide-footer .brand-name {
        font-size: var(--fz-18);
        line-height: 116%; /* 20px */
        letter-spacing: -0.3px;
    }

    footer.wide-footer .paragraph {
        font-size: var(--fz-12);
        padding-left: 0.5px;
    }

    footer.wide-footer .footer-meta {
        max-width: 100vw;
        gap: 24px;
        padding: 32px 0 24px 0;
    }

    footer.wide-footer .footer-meta .inner {
        flex-wrap: wrap;
        gap: 24px 72px;
    }

    footer.wide-footer .footer-meta .social {
        max-width: 240px;
        gap: 24px;
        margin-right: auto;
    }

    footer.wide-footer .footer-meta .social .title {
        gap: 12px;
        margin-bottom: 2px;
    }

    footer.wide-footer h4 {
        font-size: var(--fz-16);
        line-height: 112%; /* 18px */
        max-width: max-content;
        padding-left: 1px;
    }

    footer.wide-footer .footer-meta p,
    footer.wide-footer .footer-meta p a {
        font-size: var(--fz-12);
        line-height: 140%; /* 16px */
        letter-spacing: -0.2px;
        padding: 0;
    }

    footer.wide-footer .footer-meta .title a {
        height: 30px;
    }

    footer.wide-footer .footer-meta .social img.qr-code {
        display: none;
    }

    footer.wide-footer .footer-meta .text-info {
        flex: 1 0 320px;
        min-width: 320px;
        max-width: 368px;
        gap: 12px;
        padding: 4px 0 0 0;
    }
}

@media (max-width: 607px) {
    .about-us .work-direction .inner {
        gap: 32px;
    }

    .about-us .work-direction h2 {
        max-width: max-content;
    }

    .about-us .work-direction .main-info {
        gap: 24px 56px;
    }

    .about-us .work-direction .main-info .list {
        max-width: 560px;
    }

    .about-us .work-direction-item-first .content-wrapper,
    .about-us .work-direction-item .content-wrapper {
        padding: 12px 0;
    }

    .about-us .work-direction-item-first .wd-key-info,
    .about-us .work-direction-item .wd-key-info {
        flex-direction: column;
        padding-top: 4px;
    }

    .about-us .work-direction-item .wd-key-info .text-block {
        padding: 0;
    }

    .about-us .work-direction-item.pressed {
        border-top: 0.5px solid var(--grey-text-light);
    }

    .team .inner,
    .hangers .inner .intro-info {
        gap: 24px;
        margin-bottom: 8px;
    }

    .hangers .inner {
        gap: 40px 0;
    }
    
    .team .inner .key-info,
    .hangers .intro-info .key-info {
        flex-direction: row;
        align-items: center;
        flex-wrap: wrap;
        gap: 24px;
    }

    .team .inner .title {
        flex-direction: row;
        align-items: center;
    }

    .team .inner .text-info,
    .hangers .intro-info .text-info {
        gap: 16px;
        padding-left: 0;
    }

    .hangers .main-info {
        gap: 32px;
    }

    .hangers {
        padding-bottom: 40px;
    }

    .hangers .main-info .plight {
        margin-bottom: 16px;
    }
}

@media (max-width: 574px) {
    .anticorruption {
        padding-bottom: 56px;
    }

    .anticorruption__title,
    .anticorruption__main-info {
        max-width: fit-content
    }

/*  ADAPTIVE —— FOOTER-META | X-SMALL */
    .footer-meta .text-info {
        padding: 0;
    }

    .footer-meta .text-info p {
        padding: 0;
    }

    .vacancy-about-us .inner {
        align-items: flex-start;
        gap: 20px;
    }

    .vacancy-about-us h1 {
        text-align: left;
        padding-bottom: 4px;
    }

    .vacancy-about-us .button {
        max-width: 100%;
    }
}

@media (max-width: 538px) {
    :root {
        --font-size-h2: 22px;
        --font-size-sh1: 28px;
        --font-size-paragraph: 12px;
        --font-size-index: 14px;
        --font-size-lead: 15px;
        --font-size-btn: 9px;
    }

    .hero {
        align-items: flex-start;
    }

/*  ADAPTIVE —— ALL PROJECTS | X-SMALL */
    .projects-panel {
        gap: var(--container-gap-xs);
    }

    .project-card__cta {
        gap: var(--card-gap-xs);
    }

/*  ADAPTIVE —— VACANCIES | X-SMALL */
    .vacancies .inner {
        gap: 20px;
    }

    .vacancies .vacancy-header {
        justify-content: center;
    }

    .vacancy-header .key-info {
        max-width: 300px;
        gap: 8px;
    }

    .vacancies .vacancy-header img.logo  {
        width: 32px;
        min-width: 32px;
    }

    .vacancies h1 {
        font-size: var(--fz-14);
    }

    .vacancies .vacancy-header p {
        font-size: var(--fz-12);
    }

    .vacancies .vacancy-header .divider-wrapper {
        height: 52px;
    }

    .vacancies .vacancy-header h2 {
        text-align: left;
        text-wrap: wrap;
        max-width: max-content;
    }

/*  ADAPTIVE —— ABOUT US | X-SMALL */
    .about-us .inner {
        align-items: flex-start;
    }

    .about-us h1 {
        text-align: left;
        padding-bottom: 8px;
    }

    .about-us .main-text {
        padding-left: 0;
    }

    .about-us .vacancy-other .lead-2 {
        padding: 0;
    }

    .about-us .vacancy-institute .element,
    .about-us .vacancy-team .element,
    .about-us .vacancy-other .element {
        margin: 0;
    }

/*  ADAPTIVE —— KONKURS | X-SMALL */
    .summary .inner .main-info {
        padding-bottom: 12px;
    }

    .summary .inner .card-list .result-header {
        display: none;
    }

    .summary .inner .card-list .info-card .inner {
        align-items: flex-start;
        flex-direction: column;
        flex-wrap: wrap;
        gap: 8px;
    }

    .summary .inner .info-card .title {
        display: flex;
    }

    .summary .inner .info-card .title--secondary {
        flex-direction: column;
        align-items: flex-start;
    }

    .summary .inner .info-card .subheading-3--label {
        display: none;
    }

    .summary .inner .info-card .number--main {
        display: none;
    }

    .summary .inner .info-card .number {
        text-align: left;
        line-height: 80%;
        letter-spacing: -0.5;
        min-width: fit-content;
        max-width: fit-content;
        margin: 0;
    }
}

/* Ховер только там, где есть мышь */
@media (hover: hover) and (pointer: fine) {
    .logo:hover {
        color: var(--pink-accent-dark);
        transform: scale(1.045);
    }

    .about-us .work-direction-item-first:hover,
    .about-us .work-direction-item:hover {
        background: var(--grey-bg-white);
        border-top: none;
        cursor: pointer;
        transform: scale(1.045);
        box-shadow: 0 4px 16px rgba(0,0,0,0.15);
    }

    .about-us .work-direction-item-first:hover .subheading-5,
    .about-us .work-direction-item:hover .subheading-5 {
        font-weight: 550;
    }

    .team .inner .secondary-info:hover .main-img {
        clip-path: inset(
            0
            0
            0
            0
            round
            var(--team-image-radius)
            0
            var(--team-image-radius)
            0
        );
    }

    .team .inner .secondary-info:hover::after {
        opacity: var(--team-tint-opacity);

        clip-path: inset(
            0
            0
            0
            0
            round
            var(--team-image-radius)
            0
            var(--team-image-radius)
            0
        );
    }

    .team .inner .secondary-info:hover .ident {
        opacity: 1;
    }

    .hangers .main-info .CTA .button:hover,
    .anticorruption .main-info .CTA .button:hover,
    .hangers .main-info .key-info .hangers-card .button:hover {
        background: var(--pink-bg-black);
        color: var(--pink-text-white);
    }

    .hangers .main-info .key-info .tabs-control .tab-button:hover,
    .hangers .main-info .key-info .tab-button.is-active:hover {
        border: none !important;
        border-color: var(--pink-bg-black);
        background: var(--pink-bg-black);
        color: var(--pink-accent-light);
        transform: scale(0.98);
    }

    .hangers .hangers-card .btn-link:hover {
        transform: scale(0.98);
    }
}