@font-face {
    font-family: "Nochlezhka";
    src: url("../fonts/Nochlezhka.otf"), url("../fonts/Nochlezhka.woff");
}

@font-face {
    font-family: "Nochlezhka eng";
    src: url("../fonts/Nochlezhka eng.otf"), url("../fonts/Nochlezhka eng.woff");
}

@font-face {
    font-family: "Nunito Sans";
    src: url("../fonts/NunitoSans-VariableFont_YTLC,opsz,wdth,wght.ttf");
}

@font-face {
    font-family: "Nunito Sans";
    src: url("../fonts/NunitoSans-Italic-VariableFont_YTLC,opsz,wdth,wght.ttf");
    font-style: italic;
}

@font-face {
    font-family: "Iowan";
    src: url("../fonts/Bitstream Iowan Old Style Italic BT.ttf");
}


*, ::after, ::before {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    font-synthesis: none !important;
}

:root {
    --green: #629f42;
    --white: #fff;
    --sun-yellow: #f8eb20;
    --yellow-dark: #aea624;
    --black-1000: #141414;
    --black-500: #252525;
    --grey-1000: #8c8c8c;
    --grey-900: #989797;
    --grey-800: #a4a3a3;
    --grey-700: #afafaf;
    --grey-600: #bbbaba;
    --grey-500: #c6c5c5;
    --grey-400: #d1d1d1;
    --grey-300: #ddd;
    --grey-200: #e8e8e8;
    --grey-100: #f4f3f3;
    --beige: #f5f5dc;
    --red: #FB3B3B;
    --system-green: #A3CD10;
}

html {
    font-size: 16px;
    scroll-behavior: smooth;
    scroll-padding-top: 110px;
    background-color: var(--beige);
}

body {
    color: var(--black-1000);
    font-family: "Nunito Sans", sans-serif;
    min-height: 100vh;
    font-size: 16px;
    overflow-x: hidden;
    /* letterboxing */
    max-width: 1920px;
    margin: 0 auto;
    box-shadow: 0 0 30px 10px var(--grey-1000);
}

ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

a {
    display: block;
    /*width: 100%;*/
    text-decoration: none;
    color: inherit;
}

.inline-links a {
    display: inline;
    text-decoration: underline;
}

:focus-visible {
    outline: none;
}

a:hover {
    --bs-link-color-rgb: unset;
}

p {
    margin: 0;
    padding: 0;
    font-family: "Nunito Sans", sans-serif;
    font-weight: 400;
    font-size: clamp(1.25rem, 0.875rem + 0.42vw, 1.375rem);
    line-height: 130%;
    letter-spacing: -0.03em;
    text-align: center;
}

h6, h5, h4, h3, h2, h1 {
    margin: 0;
    padding: 0;
}

button:focus-visible {
    outline: none;
}

/* Стандартный отступ от начала страницы до заголовка в таких страницах как спецпроекты, акции, новости и т.д. */
.padding-start-page {
    padding-top: 226px;
}

/* Расположение текста посередине в грид сетке */
.grid-center {
    grid-column: 1 / -1;
    text-align: center;
}

/* Серый фон, используется на некоторых страницах */
.background-grey {
    background-color: var(--grey-100);
}

/* Следующие четыре класса стандартное расстояние между блоками, можно посмотреть в описании сетки в фигме  */
.margin-top-block {
    margin-top: 120px;
}

.margin-bottom-block {
    margin-bottom: 120px;
}

.padding-top-block {
    padding-top: 120px;
}

.padding-bottom-block {
    padding-bottom: 120px;
}

.margin-bottom-block-786 {
    margin-bottom: 120px;
}

.padding-bottom-block-786 {
    padding-bottom: 120px;
}

/* Выделение текста желтым для блочного элемента */
.yellow-bg-text {
    display: block;
    width: fit-content;
    margin: 0 auto;
    padding: 1px 6px;
    border-radius: 6px;
    background-color: var(--sun-yellow);
}

/* Желтый цвет самого текста */

.yellow-text {
    color: var(--sun-yellow);
}

/*  Выделение текста желтым фоном для span  */
span.yellow {
    background-image: linear-gradient(var(--sun-yellow), var(--sun-yellow));
    background-size: 100% 80%;
    background-repeat: no-repeat;
    background-position: 0 50%;
    padding: 0 6px;
}

/* Стиль текста Ночлежка */

.styled-text {
    font-family: 'Nochlezhka', sans-serif;
    font-feature-settings: 'ss01' 1;
}

/* Container */
/* Грид сетка согласно информации в фигме */

.grid-container, .grid-container-1024, .grid-container-1440 {
    margin-left: 40px;
    margin-right: 40px;
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    gap: 10px;
}

input:disabled {
    background-color: var(--grey-100);
    color: var(--grey-600);
    border-color: var(--grey-600);
    cursor: not-allowed;
}

/* Поля ввода */

input[type="text"], input[type="tel"], input[type="number"], input[type="password"] {
    padding: 20px 8px 20px 24px;
    background-color: var(--grey-100);
    border: 1px solid var(--grey-300);
    color: var(--black-1000);
    outline: none;
    border-radius: 10px;
    font-family: "Nunito Sans", sans-serif;
    font-weight: 600;
    font-size: 18px;
    line-height: 130%;
    letter-spacing: -0.02em;
    transition: all 300ms ease;
}

input[type="text"]:placeholder-shown, input[type="text"]::placeholder,
input[type="number"]:placeholder-shown, input[type="number"]::placeholder,
input[type="password"]:placeholder-shown,  input[type="password"]::placeholder{
    font-family: "Nunito Sans", sans-serif;
    font-weight: 600;
    font-size: 18px;
    line-height: 130%;
    letter-spacing: -0.02em;
    color: var(--grey-900);
}

input[type="tel"] {
    width: 100%;
}

input[type="tel"]:placeholder-shown, input[type="tel"]::placeholder {
    font-family: "Nunito Sans", sans-serif;
    font-weight: 600;
    font-size: 18px;
    line-height: 130%;
    letter-spacing: -0.02em;
    color: var(--grey-900);
}

.textarea-container {
    position: relative;
}

.textarea-container:has(textarea:focus)::before {
    content: "Ограничение 1000 символов";
    position: absolute;
    font-family: "Nunito Sans", sans-serif;
    font-weight: 500;
    font-size: 12px;
    line-height: 110%;
    letter-spacing: 0;
    color: var(--grey-900);
    left: 10px;
    bottom: 14px;
    z-index: 10;
}

.textarea-container:has(textarea:disabled)::before {
    content: "";
}

.textarea-container:has(textarea.invalid)::before {
    content: "Допустимо не более 1000 символов";
    position: absolute;
    font-family: "Nunito Sans", sans-serif;
    font-weight: 500;
    font-size: 12px;
    line-height: 110%;
    letter-spacing: 0;
    left: 10px;
    bottom: 14px;
    color: var(--red);
    z-index: 10;
}

.textarea-container::after {
    content: url("../img/icons/resize-icon.svg");
    position: absolute;
    right: 10px;
    bottom: 8px;
}

textarea {
    inset: 0;
    width: 100%;
    height: 96px;
    border-radius: 10px;
    background-color: #EFEFEF;
    border: 1px solid #CDCDCD;
    outline: none;
    padding: 16px;
    padding-bottom: 28px;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: -0.02em;
    color: var(--black-1000);
    resize: vertical;
    transition: all 300ms ease;
}
textarea::-webkit-resizer {
    display: none;
}

input[type="text"]:focus-visible, input[type="text"]:focus,
input[type="tel"]:focus-visible,  input[type="tel"]:focus,
textarea:focus-visible, textarea:focus,
input[type="number"]:focus-visible,  input[type="number"]:focus,
input[type="password"]:focus-visible, input[type="password"]:focus{
    border: 1px solid var(--black-1000);
    position: relative;
}

input[type="text"]:disabled,
input[type="email"]:disabled,
textarea:disabled,
input[type="number"]:disabled,
input[type="password"]:disabled{
    border: 1px solid var(--grey-600);
    cursor: not-allowed;
}

input[type="text"]:disabled::placeholder, input[type="text"]:disabled:placeholder-shown,
input[type="email"]:disabled::placeholder, input[type="email"]:disabled:placeholder-shown{
    color: var(--grey-600);
}

input[type="text"].invalid,
input[type="tel"].invalid,
input[type="email"].invalid,
input[type="number"].invalid,
input[type="password"].invalid {
    color: var(--red);
}

.form-field:has(input[type="text"].invalid)::after,
.form-field:has(input[type="tel"].invalid)::after,
.form-field:has(input[type="email"].invalid)::after,
.form-field:has(input[type="number"].invalid)::after,
.form-field:has(input[type="password"].invalid)::after{
    content: "Ошибка. Попробуйте ещё раз";
    color: var(--red);
    font-weight: 500;
    font-size: 12px;
    line-height: 110%;
    letter-spacing: 0;
}

.iti__selected-country {
    outline: none;
}


.iti__selected-country-primary {
    padding: 21px 17px 21px 25px !important;
    border-right: 1px solid var(--grey-300);
    cursor: pointer;
}

input[type="tel"]:focus-visible .iti__selected-country-primary,  input[type="tel"]:focus .iti__selected-country-primary {
    border-right: 1px solid var(--black-1000);
}

.iti--fullscreen-popup .iti__dropdown-content {
    max-width: 50%;
}

.iti__flag {
    transform: scale(2);
}

.iti__arrow {
    border: none !important;
    background-image: url("../img/icons/menu-arrow-down.svg");
    width: 10px !important;
    height: 6px !important;
    background-repeat: no-repeat;
    margin-left: 16px !important;
}

.select-custom .dropdown-toggle {
    padding: 19px 28px 19px 24px;
    border-radius: 10px;
    background-color: var(--grey-100);
    border: 1px solid var(--grey-300);
    outline: none;
    cursor: pointer;
    font-weight: 600;
    font-size: 18px;
    line-height: 130%;
    letter-spacing: -0.02em;
    width: 100%;
    text-align: left;
    position: relative;

    white-space: break-spaces;
}

.select-custom .dropdown-toggle.show {
    border: 1px solid var(--black-1000);
}

.select-custom .dropdown-toggle::after {
    border: none;
    display: block;
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
    width: 12px;
    height: 12px;
    background-image: url("../img/icons/menu-arrow-down.svg");
    background-repeat: no-repeat;
    background-size: 10px 15px;
}

.select-custom .dropdown-menu {
    width: 100%;
    margin-top: 2px;
    border-radius: 10px;
    background-color: var(--white);
    border: 1px solid var(--black-1000);
    padding: 10px;
}

.select-custom .dropdown-item {
    cursor: pointer;
    padding: 16px 50px 16px 20px;
    font-weight: 600;
    font-size: 18px;
    line-height: 130%;
    letter-spacing: -0.02em;
    color: var(--black-1000);
    border-radius: 8px;
    transition: all 300ms ease;
}

.select-custom .dropdown-item:not(:last-of-type) {
    margin-bottom: 6px;
}

.select-custom .dropdown-toggle:disabled {
    cursor: not-allowed;
}

.select-custom input {
    appearance: none;
    -webkit-appearance: none;
}

.select-custom .dropdown-toggle:disabled::after {
    opacity: 0.3;
}

.select-custom .dropdown-item.active {
    background-color: var(--grey-100);
    border: 1px solid var(--grey-200);
    border-radius: 8px;
    position: relative;
}

.select-custom .dropdown-item.active::after {
    content: "";
    background-image: url("../img/icons/done-black.svg");
    display: block;
    width: 24px;
    height: 24px;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
}

/* Кнопки */

.btn {
    border: none;
    background: none;
    outline: none;
    cursor: pointer;

    font-weight: 500;
    font-size: 16px;
    line-height: 130%;
    color: var(--black-1000);
    white-space: nowrap;

    background: var(--sun-yellow);
    border-radius: 100px;
    padding: 14px 32px;

    transition: all 300ms ease;
}

.btn-simple {
    background: none;
    outline: none;
    cursor: pointer;

    font-weight: 500;
    font-size: 16px;
    line-height: 130%;
    color: var(--black-1000);
    white-space: nowrap;

    border: 1px solid var(--black-1000);
    border-radius: 100px;
    padding: 14px 24px;

    transition: all 300ms ease;
}

.btn-exit {
    border: none;
    background-color: var(--grey-100);
    border-radius: 100px;
    width: 44px;
    height: 44px;
    margin-left: auto;
    padding: 0;
}

.btn-subscribe {
    padding: 21px 40px;
    border-radius: 100px;
    border: 1px solid transparent;
    background-color: var(--black-1000);

    color: var(--white);

    font-size: 18px;
    font-weight: 600;
    line-height: 130%;
    letter-spacing: -0.36px;

    transition: all 300ms ease;
    cursor: pointer;
}

.btn-close:focus {
    box-shadow: none;
}

.more-link {
    font-family: "Nochlezhka", "Nunito Sans", sans-serif;
    font-weight: 400;
    font-size: 24px;
    line-height: 110%;
    text-transform: uppercase;
    text-decoration: underline;
    text-decoration-skip-ink: none;
    color: var(--black-1000);
    transition: all 300ms ease;
}

.btn:disabled {
    background-color: var(--grey-300);
    color: var(--grey-900);
    cursor: not-allowed;
}

.btn-simple:disabled {
    border-color: var(--grey-900);
    color: var(--grey-900);
    cursor: not-allowed;
}

@media (hover: hover) {
    .btn:hover {
        background: var(--green);
    }

    .btn-simple:not(:disabled):hover {
        background: var(--green);
        border-color: transparent;
    }

    .more-link:hover,
    a.link:hover {
        color: #727272 !important;
    }

    .btn-subscribe:hover {
        border: 1px solid var(--green);
        background: var(--green);
        color: var(--black-1000);
    }
}

/* Типография */

.hero-title, h1, h2, h3, h4, a.link {
    font-family: "Nochlezhka", sans-serif;
    font-feature-settings: 'ss01' 1;
    line-height: 100%;
    font-weight: 400;
    text-transform: uppercase;
    color: var(--black-1000);
    letter-spacing: -0.01em;
    text-align: center;
    /*text-box-trim: trim-both;*/
    /*text-box-edge: cap alphabetic;*/
    /*margin: calc(clamp(4.75rem, 2.125rem + 2.92vw, 5.625rem) / -9) auto !important;*/
}

.hero-title {
    font-size: clamp(5.5rem, 2.5rem + 3.33vw, 6.5rem);
}

h1 {
    font-size: clamp(4.75rem, 2.125rem + 2.92vw, 5.625rem);
}

h2 {
    font-size: clamp(3.25rem, 1.75rem + 1.67vw, 3.75rem);
}

h3 {
    line-height: 110%;
    letter-spacing: 0;
    font-size: clamp(2.25rem, 1.5rem + 0.83vw, 2.5rem);
}

h4 {
    line-height: 120%;
    letter-spacing: 0;
    font-size: clamp(1.625rem, 0.875rem + 0.83vw, 1.875rem);
}

a.link {
    line-height: 110%;
    letter-spacing: 0;
    font-size: clamp(1.375rem, 1rem + 0.42vw, 1.5rem);

    text-decoration-line: underline;
    text-decoration-style: solid;
    text-decoration-skip-ink: none;
    text-decoration-thickness: auto;
    text-underline-offset: auto;
    text-underline-position: from-font;

    transition: all 300ms ease;
}

/* Блок с карточками */

.cards-container {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px clamp(1rem, 0.25rem + 0.83vw, 1.25rem);
}

.card {
    display: flex;
    padding: 32px 33px 29px 32px;
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
    min-height: 677px;
    border-radius: 10px;
    background: #FFF;
}

.card-img {
    width: 100%;
    height: auto;
    position: relative;
}

.card-img::before {
    content: "";
    display: block;
    padding-top: calc((332 / 536) * 100%);
}

.card-img img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 6px;
}

.card-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;

    padding: 16px 0;
}

.card-tags .card-tag {
    display: flex;
    padding: 8px 9px;
    justify-content: center;
    align-items: center;
    border-radius: 100px;
    cursor: pointer;
    border: 1px solid var(--black-1000);

    color: var(--black-1000);
    text-align: center;

    font-size: 16px;
    font-weight: 500;
    line-height: 100%;
    letter-spacing: -0.32px;
}

.card h4 {
    font-feature-settings: 'ss01' on;

    font-family: "Nochlezhka", sans-serif;
    font-size: 30px;
    font-weight: 400;
    line-height: 120%;
    text-transform: uppercase;
    text-align: left;
}

.card p {
    color: #141414;
    font-family: "Nunito Sans", sans-serif;
    font-size: clamp(1rem, 0.625rem + 0.42vw, 1.125rem);
    font-style: normal;
    font-weight: 600;
    line-height: 130%;
    letter-spacing: -0.36px;
    text-align: left;
}

.card .card-date {
    font-weight: 500;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: -0.02em;
    color: #727272;
    padding-top: 16px;
    padding-bottom: 16px;
    margin-block-start: 0;
}

.card h4,
.card p {
    margin-block-start: -8px;
}

.card a.link {
    margin-top: auto;
}

/* Переключатели */

.tabs {
    grid-column: 1 / -1;
    display: flex;
    gap: 8px;
    margin-top: 64px;
    margin-bottom: 30px;
}

.tab {
    width: 100%;
}

.tab .tab-item {
    width: 100%;
    text-align: center;
    color: var(--black-1000);
    font-size: 22px;
    font-weight: 400;
    line-height: 130%;
    letter-spacing: -0.66px;
    padding: 18px 0;
    border-radius: 10px;
    background: var(--grey-200);
    cursor: pointer;
    transition: all 300ms ease;
    border: none;
}

.tab .active {
    background-color: var(--sun-yellow);
}

.tab-cities .tab-short {
    display: none;
}

@media (hover: hover) {
    .tab .tab-item:hover {
        background-color: var(--green);
    }
}

/* Пагинация */

.pagination {
    margin-top: 24px;
    display: flex;
    justify-content: center;
    gap: 4px;
}

.pagination-item {
    color: #000;
    font-weight: 400;
    font-size: 22px;
    line-height: 130%;
    letter-spacing: -0.03em;

    padding: 5px 14px;
    border-radius: 50%;
}

.pagination-item.active {
    font-weight: 700;
    background-color: var(--sun-yellow);
}

.pagination .arrow-prev,
.pagination .arrow-next {
    background-color: var(--grey-200);
    border-radius: 50%;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 300ms ease;
}

.pagination .arrow-prev {
    margin-right: 12px;
}
.pagination .arrow-disabled {
    cursor: not-allowed;
}

.pagination .arrow-next {
    margin-left: 12px;
}

.pagination .arrow-next img {
    transform: rotate(180deg);
}

/* Блок пожертвования */

.support {
    background-color: var(--sun-yellow);
    padding: 40px 0;
    margin-bottom: clamp(5.625rem, 4.375rem + 2.6vw, 7.5rem);
}

.support__left {
    grid-column: span 6;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    margin-left: -32px;
}

.support__left-top {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: clamp(1.5rem, 0.833rem + 1.39vw, 2.5rem);
    margin-top: 80px;
}

.support__left-bottom {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 20px;
    margin-bottom: 84px;
}

.support__title {
    font-weight: 400;
    line-height: 100%;
    text-align: center;
    text-transform: uppercase;
    font-size: clamp(4.75rem, 2.125rem + 2.92vw, 5.625rem);
    letter-spacing: -0.01em;
}

.support__title::before {
    content: "";
    display: block;
    margin-top: -0.14em;
}

.support__title::after {
    content: "";
    display: block;
    margin-bottom: -0.12em;
}

.support__left-bottom a.link {
    font-size: 30px;
}

.support__desc {
    font-weight: 400;
    font-size: clamp(1.25rem, 1.167rem + 0.17vw, 1.375rem);
    line-height: 130%;
    text-align: center;
    vertical-align: bottom;
    max-width: 530px;
    letter-spacing: -0.03em;
}

.support__num {
    font-weight: 400;
    font-size: clamp(4.375rem, 3.542rem + 1.74vw, 5.625rem);
    line-height: 100%;
    text-align: center;
    vertical-align: bottom;
    text-transform: uppercase;
}

.support__num-desc {
    font-weight: 400;
    font-size: clamp(1.25rem, 1.167rem + 0.17vw, 1.375rem);
    line-height: 130%;
    text-align: center;
    vertical-align: bottom;
    max-width: 260px;
    letter-spacing: -0.03em;
}

.support__right {
    grid-column: span 6;
}

.support__form {
    background-color: var(--white);
    border-radius: 10px;
    padding: clamp(2.5rem, 0.833rem + 3.47vw, 5rem);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: 71.5vh;
    gap: 18px;
}

.support__form .form-top {
    display: flex;
    flex-direction: column;
    gap: 22px;
}

.support__form .form-buttons {
    display: flex;
    justify-content: space-between;
    gap: 10px;
}

.support__form .form-buttons .d-flex {
    width: 100%;
}

.support__form .form-buttons label:not(label:last-of-type) {
    /*margin-right: 10px;*/
}

.form-sum-title {
    font-weight: 700;
    font-size: 30px;
    line-height: 100%;
    letter-spacing: -0.03em;
    text-align: center;
}

.support__form input {
    -webkit-appearance: none;
}

.support__form input + label {
    font-weight: 400;
    font-size: clamp(1.25rem, 1.167rem + 0.17vw, 1.375rem);
    line-height: 130%;
    text-align: center;
    letter-spacing: -0.03em;
    color: var(--grey-900);
    width: 100%;
    cursor: pointer;

    border: 1px solid var(--grey-900);
    border-radius: 10px;
    padding: 19px 0;

    transition: all 300ms ease;
}

.support__form input:checked + label {
    background-color: var(--sun-yellow);
    color: var(--black-1000);
    border-color: transparent;
}

.form-btn-desc {
    font-weight: 400;
    font-size: clamp(1.25rem, 1.167rem + 0.17vw, 1.375rem);
    line-height: 130%;
    text-align: center;
    align-self: center;
    letter-spacing: -0.03em;
    display: none;
}

.form-btn-desc.active {
    display: flex;
}

.form-middle {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.form-middle h3 {
    font-family: "Nunito Sans";
    text-transform: none;
    font-weight: 500;
    font-size: 30px;
    letter-spacing: -0.02em;
    text-align: center;
    color: var(--black-1000);
}

.form-donate__sum {
    width: 100%;
    display: flex;
    align-items: end;
    gap: clamp(0.25rem, 0.131rem + 0.51vw, 0.375rem);
    justify-content: space-between;
    margin: 0;
    padding: 0;
}

.form-donate__sum li {
    display: block;
    width: 100%;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.form-donate__sum input:checked + label {
    background-color: var(--white);
    color: var(--black-1000);
    border-color: var(--black-1000);
    border-width: 2px;
    font-weight: 700;
    padding: 18px 0;
}

.form-donate__item input + label {
    font-size: clamp(1.25rem, 1.167rem + 0.17vw, 1.375rem);
    transition: all 300ms ease;
}

.form-sum-desc {
    font-weight: 400;
    font-size: clamp(1.25rem, 1.167rem + 0.17vw, 1.375rem);
    line-height: 130%;
    letter-spacing: -0.03em;
    text-align: center;
    margin-top: 25px;
    margin-bottom: 40px;
    max-width: 559px;
    display: none;
}
.form-sum-desc.active {
    display: flex;
}

.form-donate-another {
    display: none;
    font-size: clamp(1.25rem, 1.167rem + 0.17vw, 1.375rem) !important;
    line-height: 130%;
    text-align: center;
    letter-spacing: -0.03em;
    color: var(--grey-900);
    width: 100%;

    border: 1px solid var(--grey-900);
    border-radius: 10px;
    padding: 19px 24px 19px 21px !important;

    transition: all 300ms ease;
}
.support__form .is-error {
    color: #FB3B3B;
}

.form-donate-another:focus {
    outline: none;
    background-color: var(--white);
    color: var(--black-1000);
    border-color: var(--black-1000);
}

.form-email {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    width: 100%;
}

.form-email label {
    font-weight: 500;
    font-size: 18px;
    line-height: 130%;
    letter-spacing: -0.02em;
}

.form-email input {
    display: block;
    width: 100%;
    border: 1px solid var(--grey-300);
    border-radius: 10px;
    padding: 17px 8px;
    background: var(--grey-100);
    transition: all 300ms ease;
}

.form-email input:focus {
    border-color: #000;
}

.form-email input::placeholder {
    text-align: center;
}

.form-email input:focus {
    outline: none;
}

.form-bottom {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 25px;
}

.support__form .form-btn {
    width: 100%;
    border-radius: 100px;
    padding: 27px 0;
    font-weight: 500;
    font-size: 26px;
    line-height: 110%;
    letter-spacing: -0.03em;
    text-align: center;
    color: var(--white);
    background: var(--black-1000);
    transition: all 300ms ease;
    border: 1px solid transparent;
}

.support__form .form-btn:focus {
    outline: none;
}

.support__form .form-btn:disabled {
    background-color: var(--grey-300);
    color: var(--grey-900);
    cursor: not-allowed;
}

.support__form .form-offer {
    font-weight: 500;
    font-size: clamp(0.875rem, 0.792rem + 0.17vw, 1rem);
    line-height: 100%;
    letter-spacing: -0.02em;
    text-align: center;
    color: var(--black-1000);
    opacity: 0.5;
    max-width: 650px;
}

#onetime + label br {
    display: none;
}

input[type="email"] {
    flex: 1 0 0;
    padding: 22px 8px 22px 24px;
    border-radius: 10px;
    border: 1px solid var(--grey-300);
    background-color: var(--grey-100);

    color: var(--black-1000);

    font-family: "Nunito Sans", sans-serif;
    font-size: 18px;
    font-weight: 600;
    line-height: 130%;
    letter-spacing: -0.36px;
    transition: all 300ms ease;
}

input[type="email"]::placeholder {
    color: var(--grey-900);

    font-family: "Nunito Sans", sans-serif;
    font-size: 18px;
    font-weight: 600;
    line-height: 130%;
    letter-spacing: -0.36px;
}

input[type="email"]:focus {
    outline: none;
    border: 1px solid var(--black-1000);
}

/* Подписка на новости */

.mail-subscribe {
    background-color: var(--sun-yellow);
    padding: 106px 0 74px;
}

.mail-subscribe h1 {
    max-width: 1150px;
    margin: 0 auto;
    margin-bottom: 14px;
}

.mail-subscribe p {
    font-weight: 400;
    font-size: clamp(1.25rem, 1.167rem + 0.17vw, 1.375rem);
    line-height: 130%;
    letter-spacing: -0.03em;
    text-align: center;
    margin-bottom: 45px;
}

.mail-subscribe .mail-subscribe-form {
    max-width: 800px;
    margin: 0 auto;
}

.mail-subscribe .mail-subscribe-form .form-group {
    display: flex;
    gap: 10px;
    margin-bottom: 16px;
}

.mail-subscribe .mail-subscribe-form p {
    color: var(--black-1000);
    text-align: center;
    font-size: clamp(0.875rem, 0.792rem + 0.17vw, 1rem);
    font-weight: 400;
    line-height: 120%;
    letter-spacing: -0.48px;
    opacity: 0.5;
}

.mail-subscribe .mail-subscribe-form a {
    display: inline;
    text-decoration-line: underline;
    text-decoration-style: solid;
    text-decoration-skip-ink: auto;
    text-decoration-thickness: auto;
    text-underline-offset: auto;
    text-underline-position: from-font;
}

/* Hero секция 3 */
.hero-design {
    min-height: 800px;
    padding-top: 146px;
    padding-bottom: 56px;
}

.hero-container {
    height: 100%;
    display: flex;
    flex-direction: column;
    gap: 49px;
}

.hero-design nav, .hero-design .hero-title, .hero-design p {
    grid-column: 1 / -1;
    text-align: left;
}

.hero-design .breadcrumb-item {
    font-weight: 400;
    font-size: clamp(1rem, 0.917rem + 0.17vw, 1.125rem);
    line-height: 130%;
    letter-spacing: -0.02em;
    color: var(--grey-800);
}

.hero-design .breadcrumb-item.active {
    color: var(--white);
}

.hero-design .breadcrumb-item + .breadcrumb-item::before {
    color: var(--white);
    padding-right: 5px;
}

.hero-design .breadcrumb-item + .breadcrumb-item {
    padding-left: 5px;
}

.hero-design .hero-title {
    color: var(--white);
}

.hero-design p {
    margin-top: auto;
    color: var(--white);

    font-size: clamp(1.25rem, 1.167rem + 0.17vw, 1.375rem);
    font-weight: 400;
    line-height: 130%;
    letter-spacing: -0.66px;
    max-width: 505px;
}

.hero-design .btn {
    margin-top: auto;
    max-width: fit-content;
}

/* Hero 2 */

.hero-2 {
    min-height: 800px;
    background: var(--sun-yellow);
    display: flex;
}

.hero-2__left {
    padding-top: 146px;
    margin: 0 0 56px 0;
    padding-right: 40px;
    padding-left: 40px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    /*min-width: 37.5%;*/
    width: 100%;
    max-width: 800px;
}

.hero-2__left a {
    display: flex;
    align-items: center;
    gap: 7px;
    padding-left: 5px;

    font-size: 18px;
    line-height: 130%;
    letter-spacing: -0.02em;
    text-decoration: underline;
    text-decoration-style: solid;
    text-decoration-thickness: 0;
    color: var(--black-1000);
}

.hero-2__left h1 {
    text-align: left;
    font-size: clamp(3.25rem, 2.917rem + 0.69vw, 3.75rem);
    margin-top: 80px;
}

.hero-2__left h1::before {
    content: "";
    display: block;
    margin-top: -0.12em;
}

.hero-2__left h1::after {
    content: "";
    display: block;
    margin-bottom: -0.12em;
}

.hero-2__left p {
    text-align: left;
    font-size: 22px;
    line-height: 130%;
    letter-spacing: -0.03em;
    margin-top: 120px;
}

.hero-2__left .hero-tags {
    display: flex;
    gap: 6px;
    margin-top: 30px;
}

.hero-2__left .hero-tag {
    font-weight: 500;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: -0.02em;
    text-align: center;
    color: var(--black-1000);
    padding: 8px 10px;
    background-color: var(--grey-100);
    border-radius: 100px;
}

.hero-2__right {
    margin-left: auto;
    flex-grow: 1;
    overflow: hidden;
}

.hero-2__right .img-container {
    width: 100%;
    height: 100%;
    aspect-ratio: 1120 / 800;
}

.hero-2__right .img-container img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;

}

/* Hero with breadcrumbs */

.hero-with-breadcrumbs {

}

.hero-with-breadcrumbs .hero-container {
    margin: 0;
    gap: 0;
}

.hero-with-breadcrumbs {
    margin-bottom: 0;
}

.hero-with-breadcrumbs .breadcrumb {
    margin-bottom: 0;
}

.hero-with-breadcrumbs nav {
    margin-bottom: 80px;
}


.hero-with-breadcrumbs .hero-2__left p {
    margin-top: auto;
    max-width: 505px;
}

.hero-with-breadcrumbs .hero-2__left a {
    padding-left: 0;
    font-family: "Nunito Sans", sans-serif;
    font-weight: 400;
    font-size: 18px;
    line-height: 130%;
    letter-spacing: -0.02em;
    color: #14141466;
    text-decoration: none;
}

.hero-with-breadcrumbs .breadcrumb-item.active {
    font-family: "Nunito Sans", sans-serif;
    font-weight: 400;
    font-size: 18px;
    line-height: 130%;
    letter-spacing: -0.02em;
    color: var(--black-1000);
}


.hero-with-breadcrumbs .breadcrumb-item + .breadcrumb-item {
    padding-left: 6px;
}

.hero-with-breadcrumbs .breadcrumb-item + .breadcrumb-item::before {
    padding-right: 6px;
}

.hero-with-breadcrumbs .hero-2__left {
    width: 60%;
}

.hero-with-breadcrumbs .hero-2__right {
    width: 40%;
}

.hero-with-breadcrumbs .hero-2__left .hero-title {
    font-size: clamp(5.5rem, 2.5rem + 3.33vw, 6.5rem);
    margin-top: 0;
    text-align: left;
}

.hero-with-breadcrumbs .hero-title::before {
    content: "";
    display: block;
    margin-top: -0.14em;
}

.hero-with-breadcrumbs .hero-title::after {
    content: "";
    display: block;
    margin-bottom: -0.12em;
}

/* Карточки сотрудники - клиенты */

.circle-cards-block {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    column-gap: 10px;
    row-gap: 40px;
}

.circle-card {
    grid-column: span 2;
    display: flex;
    flex-direction: column;
    align-items: center;
    cursor: pointer;
}

.circle-card:nth-child(10n + 6) {
    grid-column: 3 / span 2;
}

.circle-card .img-container {
    max-width: 300px;
    margin-bottom: 32px;
    overflow: hidden;
    border-radius: 50%;
    width: 100%;
}

.circle-card .img-container img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: cover;
    aspect-ratio: 1 / 1;
    transition: all 300ms ease;
}

.circle-card h4 {
    font-size: clamp(1.5rem, 1.25rem + 0.52vw, 1.875rem);
}

.circle-cards-block .circle-card p {
    color: var(--grey-700);
    text-align: center;
    font-size: clamp(1rem, 0.917rem + 0.17vw, 1.125rem);
    font-weight: 400;
    line-height: 130%;
    letter-spacing: -0.02em;
    margin: 0;
}

/* Employee Popup, Supporter Popup */

.personal-modal .modal-dialog, .supporter-modal .modal-dialog, .history-modal-dialog,
.other-ways-modal-dialog {
    width: 100%;
    max-width: 1069px;
    height: calc(100% - 200px);
    margin-left: auto !important;
    margin-right: 40px;
    margin-top: 100px;
    margin-bottom: 100px;
}

.personal-modal .modal-close-btn,
.history-modal .modal-close-btn {
    position: absolute;
    right: 24px;
    top: 24px;
    border: 0;
    background: url("../img/icons/modal-close-icon.svg") var(--sun-yellow);
    background-repeat: no-repeat;
    background-position: center;
    border-radius: 50px;
    width: 56px;
    height: 56px;
    cursor: pointer;
    transition: all 300ms ease;
}

.supporter-modal .modal-close-btn {
    position: absolute;
    right: 24px;
    top: 24px;
    border: 0;
    background: var(--sun-yellow);
    border-radius: 50px;
    width: 56px;
    height: 56px;
    cursor: pointer;
    transition: all 300ms ease;
    display: flex;
    justify-content: center;
    align-items: center;
}

.supporter-modal .modal-close-btn img {
    margin: 0;
    width: 34px;
    height: 34px;
}

.personal-modal .modal-close-btn-tablet, .supporter-modal .modal-close-btn-tablet, .history-modal .modal-close-btn-tablet {
    display: none;
}

.personal-modal .modal-close-btn img,
.history-modal .modal-close-btn img {
    width: 22px;
    height: 22px;
}

.personal-modal .modal-content, .supporter-modal .modal-content, .history-modal .modal-content {
    border-radius: 10px;
    border: 0;
}

.supporter-modal .modal-body {
    padding: 0;
    /*min-height: 82vh;*/
    padding-bottom: 64px;
}

.supporter-modal .modal-dialog-scrollable .modal-content {
    height: 100%;
}

.supporter-modal .mobile-desc {
    display: none;
}

.supporter-modal h1::before {
    content: "";
    display: block;
    margin-top: -0.12em;
}

.supporter-modal h1::after {
    content: "";
    display: block;
    margin-bottom: -0.12em;
}

.supporter-modal .content-info {
    margin: 64px 32px 40px 64px;
    display: grid;
    grid-template-columns: 220px 1fr;
    column-gap: 24px;
}


.supporter-modal .content-info h1:nth-of-type(1) {
    grid-column: 1 / -1;
}

.personal-modal .content-info {
    margin-top: 33px;
    margin-left: 46px;
    margin-bottom: 48px;
}

.personal-modal .modal-body::-webkit-scrollbar, .supporter-modal .modal-body::-webkit-scrollbar,
.history-modal .modal-body::-webkit-scrollbar, .other-ways-modal .modal-body::-webkit-scrollbar {
    width: 20px;
}

.personal-modal .modal-body::-webkit-scrollbar-track, .supporter-modal .modal-body::-webkit-scrollbar-track, .history-modal .modal-body::-webkit-scrollbar-track,
.other-ways-modal .modal-body::-webkit-scrollbar-track {
    background: var(--grey-200);
}

.personal-modal .modal-body::-webkit-scrollbar-thumb, .supporter-modal .modal-body::-webkit-scrollbar-thumb, .history-modal .modal-body::-webkit-scrollbar-thumb,
.other-ways-modal .modal-body::-webkit-scrollbar-thumb {
    background-color: var(--black-1000);
    border-radius: 8px;
    border: 2px solid var(--grey-200);
}

.personal-modal h1, .supporter-modal h1 {
    text-align: left;
}

.supporter-modal-name {
    grid-column: 1 / -1;
    margin-bottom: 59px;
    display: flex;
    flex-direction: column;
    gap: 21px;
}

.supporter-modal h1 {
    margin-bottom: 0;
}

.personal-modal h1:nth-of-type(2), .supporter-modal h1:nth-of-type(2) {
    padding-left: 90px;
    margin-bottom: 46px;
}

.supporter-modal h1:nth-of-type(2) {
    grid-column: 1 / -1;
    margin-bottom: 0;
}

.supporter-modal h4 {
    text-align: left;
    margin-bottom: 17px;
}

.supporter-modal .content-info p {
    text-align: left;
    font-size: 18px;
    line-height: 130%;
    letter-spacing: -0.02em;
}

.personal-modal img, .supporter-modal img {
    display: block;
    width: 100%;
    max-width: 130px;
    height: auto;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    border-radius: 50%;
    margin-left: 90px;
    margin-right: 24px;
    float: left;
}

.supporter-modal img {
    margin-top: 8px;
    grid-column: 1 / span 1;
    grid-row: 2 / span 2;
    margin-left: 0;
    margin-left: auto;
    margin-right: 0;
}

.personal-modal h4 {
    text-align: left;
    margin-bottom: 32px;
}

.personal-modal .contacts {
    display: flex;
    gap: 40px;
}

.personal-modal .contact {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding-top: 8px;
    border-top: 1px solid var(--black-1000);
    width: 100%;
    max-width: 320px;
}

.personal-modal .contact p {
    text-align: left;
    font-size: 18px;
    line-height: 130%;
    letter-spacing: -0.02em;
    margin: 0;
}

.personal-modal .contact p.title-bold {
    font-weight: 700;
    font-size: 22px;
}

.personal-modal .content-desc, .supporter-modal .content-desc {
    margin-left: 30px;
    padding-left: 108px;
    margin-right: 68px;
}

.personal-modal .content-desc p, .supporter-modal .content-desc p {
    text-align: left;
    line-height: 130%;
}

.personal-modal .content-desc *, .supporter-modal .content-desc * {
    font-size: 22px;
}


.personal-modal .content-desc p:empty, .supporter-modal .content-desc p:empty {
    display: none;
    border: 1px solid red;
}

.supporter-modal .content-desc {
    margin-left: 47px;
}

.supporter-modal .content-desc p {
    letter-spacing: -0.02em;
    max-width: 826px;
}

.personal-modal .content-desc, .supporter-modal .content-desc {
    background-image: url("../img/icons/icon-quotes.png");
    background-size: 100px;
    background-repeat: no-repeat;
    background-position: -5px -5px;
    margin-bottom: 33px;
    min-height: 100px;
}

.history-modal .modal-content {
    max-height: 880px;
}

.history-modal h3 {
    text-align: left;
    margin-bottom: 40px;
}

.history-modal .modal-body {
    padding: 64px;
}

.history-modal .description {
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.history-modal .description p {
    text-align: left;
}

.other-ways-modal * {
    text-align: left;
}

.other-ways-modal .modal-close-btn {
    width: 56px;
    height: 56px;
    position: absolute;
    background-color: var(--grey-100);
    border: none;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    right: 16px;
    top: 16px;
    cursor: pointer;
}

.other-ways-modal .modal-close-btn img {
    max-width: 22px;
}

.other-ways-modal .modal-body {
    padding: 40px;
    padding-top: 48px;
}

.other-ways-modal h3 {
    margin-bottom: 40px;
    font-size: 40px;
}

.other-ways-modal .type-help {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-bottom: 24px;
}

.other-ways-modal .type-help p {
    font-size: 18px;
    margin-bottom: 0;
}

.other-ways-modal p {
    font-size: 18px;
    margin-bottom: 24px;
}


.other-ways-modal p.type-help-title {
    font-weight: 700;
    font-size: 22px;
    line-height: 130%;
    letter-spacing: -0.02em;
}

.other-ways-modal-dialog {
    max-width: 800px;
}

.other-ways-modal .sms-modal-list a {
    font-size: 18px;
    line-height: 130%;
    letter-spacing: -0.02em;
    text-decoration: underline;
    text-decoration-style: solid;
    text-underline-offset: 3px;
    text-decoration-skip-ink: none;
}

.other-ways-modal .services {
    padding-top: 24px;
    border-top: 1px solid var(--grey-200);
}

.other-ways-modal .services img:first-of-type {
    max-width: 100px;
    margin-bottom: 8px;
}

.other-ways-modal .services p {
    font-size: 16px;
    color: var(--grey-1000);
    margin-bottom: 8px;
}

.other-ways-modal .services img:last-of-type {
    max-width: 225px;
}

.other-ways-modal p.details-title {
    margin-bottom: 8px;
    font-weight: 700;
    font-size: 22px;
    line-height: 130%;
    letter-spacing: -0.02em;
}

.other-ways-modal .details-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-bottom: 24px;
}

.other-ways-modal .details-item {
    display: flex;
    gap: 20px;
    max-width: 625px;
}

.other-ways-modal .details-desc {
    flex: 0 0 200px;
    font-weight: 500;
    font-size: 16px;
    line-height: 130%;
    letter-spacing: 0;
    color: var(--grey-900);
}

.other-ways-modal .details-value {
    font-weight: 500;
    font-size: 16px;
    line-height: 130%;
    letter-spacing: 0;
    color: var(--black-1000);
}

.other-ways-modal .btn-subscribe {
    max-width: fit-content;
    display: flex;
    align-items: center;
    gap: 4px;
}

.other-ways-modal .terminal-ways {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.other-ways-modal .terminal-way {
    display: flex;
    gap: 24px;
    padding-bottom: 16px;
    border-bottom: 1px solid var(--grey-200);
}

.other-ways-modal .terminal-way .img-container {
    flex: 0 0 92px;
}

.other-ways-modal .terminal-way .img-container img {
    display: block;
    width: 100%;
}

.other-ways-modal .terminal-way a {
    font-size: 18px;
    line-height: 130%;
    letter-spacing: -0.02em;
    text-decoration: underline;
    text-decoration-style: solid;
    text-decoration-thickness: 1px;
    text-underline-offset: 2px;
}

.other-ways-modal .terminal-way p {
    margin-bottom: 0;
}

.buh-modal p {
    margin-bottom: 0;
}



/* Черная плашка под шапкой */

.black-subheader {
    display: flex;
    justify-content: center;
    background-color: var(--black-1000);
    position: fixed;
    width: 100%;
    max-width: 1920px;
    z-index: 990;
}

.black-subheader p {
    max-width: 1195px;
    font-weight: 500;
    /*font-size: clamp(0.875rem, -0.901rem + 2.11vw, 1.625rem);*/
    font-size: 18px;
    line-height: 110%;
    letter-spacing: -0.03em;
    text-align: center;
    color: #eeeeee;
    margin-top: calc(106px + 8px);
    margin-bottom: 6px;
    padding: 0 16px;
}

/* Листовки */

.flyers-block h1 {
    max-width: 1000px;
    margin: 0 auto;
    margin-bottom: 40px;
}

.flyers-block h1::before {
    content: "";
    display: block;
    margin-top: -0.12em;
}

.flyers-block h1::after {
    content: "";
    display: block;
    margin-bottom: -0.12em;
}

.flyers-block p {
    max-width: 530px;
    margin: 0 auto;
    margin-bottom: 64px;
    line-height: 125%;
}

.flyers {
    display: grid;
    margin: 0 40px;
    grid-template-columns: repeat(12, 1fr);
    column-gap: 10px;
    row-gap: 10px;
    margin-bottom: 40px;
}

.flyer {
    background-color: var(--sun-yellow);
    border-radius: 10px;
    padding: 8px;
    position: relative;
    overflow: hidden;
}

.flyer-border {
    border-radius: 6px;
    border: 1px dashed var(--black-1000);
    height: 100%;
}

.flyer-inner {
    width: 100%;
    height: 100%;
    padding: 40px;
    padding-bottom: 35px;
    position: relative;
    z-index: 5;

    display: flex;
    flex-direction: column;
    gap: 27px;
}

.flyer-inner h2 {
    text-align: left;
    margin-top: -10px;
}

.flyer-inner ul {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.flyer-inner li {
    color: var(--black-1000);
    font-size: 22px;
    font-weight: 400;
    line-height: 130%;
    letter-spacing: -0.03em;
    padding-left: 30px;
    position: relative;
    max-width: 400px;
}

.flyer-inner li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 14px;
    height: 14px;
    background-color: var(--white);
    border-radius: 50%;
}

.flyer .flyer-inner p {
    text-align: left;
    margin: 0;
    max-width: 100%;
}

.flyer-inner .download-buttons {
    margin-top: auto;
    display: flex;
    gap: 4px;
}

.flyer-inner .download-buttons .btn-subscribe {
    display: flex;
    gap: 4px;
    align-items: center;
}

.flyer-inner .download-buttons .btn-subscribe svg {
    fill: var(--white);
    transition: all 300ms ease;
}

.flyer .flyer-img {
    position: absolute;
    display: block;
    bottom: 0;
    right: 0;
    max-height: 320px;
    z-index: 2;
}

.flyer-all {
    grid-column: 1 / span 5;
    grid-row: 1 / span 2;
    min-height: 690px;
}

.flyer-address, .flyers .flyer-woman {
    grid-column: 6 / span 7;
}

.flyer-all .flyer-img {
    max-height: 350px;
}

.flyer-woman .flyer-img {
    right: -18px;
    max-height: 294px;
}

.flyer-address .flyer-img {
    bottom: unset;
    top: 0;
    right: -25px;
    max-height: 330px;
}

.flyers-block .instruction {
    background-color: var(--white);
    border-radius: 10px;
    margin: 0 40px;
    display: flex;
    align-items: center;
    /*min-height: 470px;*/
}

.flyers-block .instruction-img {
    border-radius: 10px;
    max-width: 751px;
    max-height: 449px;
    box-shadow: 4px 4px 20px 10px #00000005;
    overflow: hidden;
    margin: 10px 58px 10px 10px;
}

.flyers-block .instruction-img img {
    display: block;
    width: 100%;
    max-height: 100%;
    background: lightgray;
}

.flyers-block .instruction-center {
    margin-right: 58px;
}

.flyers-block .instruction-center h2 {
    text-align: left;
    margin-bottom: 23px;
    font-size: clamp(3.25rem, 2.679rem + 0.89vw, 3.75rem);
}

.flyers-block .instruction-list {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.flyers-block .instruction-list li {
    font-weight: 400;
    font-size: 22px;
    line-height: 130%;
    letter-spacing: -0.03em;
    padding-left: 30px;
    position: relative;
}

.flyers-block .instruction-list li::before {
    content: "";
    display: block;
    position: absolute;
    width: 14px;
    height: 14px;
    background-color: var(--sun-yellow);
    border-radius: 50%;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}

.flyers-block .instruction-link {
    background-color: var(--sun-yellow);
    align-self: stretch;
    max-width: 425px;
    border-radius: 0 10px 10px 0;
}

.flyers-block .instruction-link a {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 32px;
    padding-bottom: 23px;
    height: 100%;
    border-radius: 0 10px 10px 0;
    transition: all 300ms ease;
}

.flyers-block .instruction-link a img {
    max-width: 23px;
    align-self: end;
}

.flyers-block .instruction-link a h4 {
    text-align: left;
    font-size: 30px;
}

/* Галерея */

.gallery {
    margin-bottom: 120px;
    position: relative;
    width: 100%;
}

.gallery .desktop-slider .main {
    transition: all 300ms ease;
    overflow: hidden;
}

.gallery .desktop-slider .main img {
    /*height: 90vh;*/
    height: 83.8vh;
    width: 100%;
    display: block;
    margin: 0 auto;
    object-fit: cover;
    transition: all 400ms ease;
}

.gallery .desktop-slider .swiper-thumbs {
    position: absolute;
    bottom: 0;
    width: 100%;
}

.gallery .desktop-slider .swiper-thumbs .swiper-wrapper {
    display: flex;
    align-items: end;
    gap: 8px;
    max-height: 220px;
}

.gallery .desktop-slider .swiper-thumbs .swiper-slide {
    flex: 0 0 234px;
}

.gallery .desktop-slider .swiper-thumbs .swiper-slide img {
    width: 100%;
    height: auto;
    object-fit: contain;
    display: block;
    cursor: pointer;
}

.gallery .mobile-slider {
    display: none;
}

.client-modal {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 2000;
    width: 100vw;
    height: 100vh;
}

.client-modal .modal-content .modal-background {
    position: absolute;
    z-index: 5;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    object-fit: cover;
}

.client-modal .modal__content {
    z-index: 10;
}

.client-modal .modal__close-btn {
    z-index: 15;
}

.client-modal .modal__close-btn {
    position: absolute;
    top: 24px;
    right: 24px;
    border: none;
    background: var(--sun-yellow);
    border-radius: 50%;
    width: clamp(2.5rem, 1.833rem + 1.39vw, 3.5rem);
    height: clamp(2.5rem, 1.833rem + 1.39vw, 3.5rem);
    text-align: center;
    transition: all 300ms ease;
    display: flex;
    align-items: center;
    justify-content: center;
}

.client-modal .modal__content {
    display: flex;
    flex-direction: column;
    margin-right: 40px;
    margin-left: auto;
    max-width: 761px;
    border-radius: 10px;
    background: var(--white);
    padding: 60px;
    padding-top: 44px;
    /*min-height: 880px;*/
    min-height: 81vh;
    margin-top: auto;
    margin-bottom: auto;
}

.client-modal .modal__content .content__name {
    font-family: "Nochlezhka", "Nunito Sans", sans-serif;
    font-weight: 400;
    font-size: clamp(4.375rem, 3.542rem + 1.74vw, 5.625rem);
    line-height: 100%;
    text-transform: uppercase;
    /*margin-bottom: clamp(1.5rem, 0.833rem + 1.39vw, 2.5rem);*/
    margin-bottom: 28px;
}

.client-modal .modal__content .content__desc {
    font-weight: 400;
    font-size: clamp(1rem, 0.881rem + 0.51vw, 1.125rem);
    line-height: 130%;
    letter-spacing: -0.02em;
    max-width: 220px;
    margin-left: clamp(7.688rem, 2.396rem + 11.02vw, 15.625rem);
    margin-bottom: clamp(2.5rem, 0.833rem + 3.47vw, 5rem);
}

.client-modal .modal__content .content__main {
    font-weight: 400;
    font-size: clamp(1.25rem, 1.167rem + 0.17vw, 1.375rem);
    line-height: 130%;
    letter-spacing: -0.029em;
    margin-bottom: 30px;
    text-align: left;
}

.client-modal .modal__content .content__about {
    margin-top: auto;
    text-align: center;
    font-size: 18px;
    padding: 19px 24px;
}

.client-modal .modal__content .content__more {
    font-size: clamp(1.125rem, 0.875rem + 0.52vw, 1.5rem);
    margin-bottom: 32px;
}

.client-modal .modal-content:not(.has-video) .modal__background-video {
    display: none;
}

.client-modal .modal-content.has-video .modal__background-video {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 0;
    pointer-events: none;
}

/* Блок шесть круглых фото */

.six-circle-block {
    margin-bottom: 120px;
}

.six-circle-block h1 {
    grid-column: 1 / -1;
    justify-self: center;
    margin-bottom: 52px;
}

.six-circle-block h1::before {
    content: "";
    display: block;
    margin-top: -0.14em;
}

.six-circle-block h1::after {
    content: "";
    display: block;
    margin-bottom: -0.14em;
}

.six-circle-block h1 + p {
    display: none;
}

.six-circle-block__list {
    grid-column: 1 / -1;
    justify-self: center;
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 10px;
    width: 100%;
}

.six-circle-block__list li {
    border-radius: 50%;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.six-circle-block__list li h4 {
    max-width: clamp(13.125rem, 11.458rem + 3.47vw, 15.625rem);
    margin-left: -2px;
}

.six-circle-block__list li p {
    margin-top: 3px;
    font-weight: 400;
    font-size: clamp(1rem, 0.833rem + 0.35vw, 1.25rem);
    line-height: 110.00000000000001%;
    letter-spacing: -0.03em;
    text-align: center;
    max-width: clamp(13.125rem, 11.667rem + 3.04vw, 15.313rem);
    color: var(--grey-600);
}

.six-circle-block .img-container {
    width: 100%;
    border-radius: 50%;
    overflow: hidden;
    display: inline-block;
    margin-bottom: 34px;
    aspect-ratio: 1 / 1;
}

.six-circle-block .img-container img {
    cursor: pointer;
    transition: all 300ms ease;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.six-circle-block__link a {
    background-color: var(--sun-yellow);
    width: 100%;
    aspect-ratio: 1 / 1;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    transition: all 300ms ease;
    margin-bottom: clamp(2rem, 1.667rem + 0.69vw, 2.5rem);
}

/* PAGE HEADER WITH IMAGE START */

.page-header-with-image {
    display: flex;
    min-height: 800px;
}

.page-header-with-image__left {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    flex: 0 0 40%;
    min-height: 800px;
    background-color: var(--sun-yellow);
    padding: 146px 40px 56px 40px;
}

.page-header-with-image__right {
    display: flex;
    flex: 0 0 60%;
    overflow: hidden;
}

.page-header-with-image__right img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.page-header-with-image__top {
    width: 100%;
    margin-bottom: 24px;
}

.page-header-with-image__top h1 {
    text-align: left;
    word-break: break-word;
}

.page-header-with-image__top a {
    text-decoration: underline;
    margin-bottom: 80px;
}

.page-header-with-image__top svg {
    margin-right: 9px;
}

.page-header-with-image__bottom {
    display: flex;
    flex-direction: column;
    min-height: 120px;
    width: 100%;
    justify-content: space-between;
}

.page-header-with-image__bottom>p {
    text-align: left;
    margin-bottom: 30px;
}

.page-header-with-image__bottom-tags {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
}

.page-header-with-image__bottom-tags p {
    font-size: 16px;
}


.page-header-with-image__bottom-tags div {
    background-color: var(--grey-100);
    padding: 8px 10px;
    border-radius: 22px;
    overflow: hidden;
}

.page-header-with-image__bottom-tags p {
    text-overflow: ellipsis;
    white-space: nowrap;
    width: 100%;
    overflow: hidden;
}

/* PAGE HEADER WITH IMAGE END */

/* Блок с городами куда приносить */

.places-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
    margin-bottom: 80px;
}

.places-row .place-moscow, .places-row .place-sp {
    display: flex;
    flex-direction: column;
}

.places-row .place-moscow {
    padding-right: 30px;
    border-right: 1px solid var(--grey-300);
}

.places-row .place-tag {
    font-weight: 500;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: -0.02em;
    text-align: center;
    padding: 8px 10px;
    border-radius: 100px;
    border: 1px solid var(--black-1000);
    max-width: max-content;
    margin-bottom: 22px;
}

.places-row .place-number, .places-row .place-address {
    font-weight: 700;
    font-size: 22px;
    line-height: 130%;
    letter-spacing: -0.02em;
    color: var(--black-500);
}

.places-row .place-address {
    margin-bottom: 10px;
}

.places-row p {
    font-weight: 400;
    font-size: 18px !important;
    line-height: 130%;
    letter-spacing: -0.02em !important;
    margin-bottom: 0 !important;

}

/* Блок спасибо всем, кто помогает */

.thanks-block {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-bottom: 120px;
}

.thanks-block .main-grey-block {
    grid-column: 1 / -1;
    display: flex;
    gap: 50px;
    background-color: #F0F0F0;
    border-radius: 10px;
    min-height: 558px;
}

.thanks-block .main-grey-block .left-side {
}

.thanks-block .main-grey-block .left-side .img-container {
    height: calc(100% - 20px);
    margin: 10px 0 10px 10px;
    border-radius: 8px;
    max-width: 593px;
}

.thanks-block .main-grey-block .left-side .img-container img {
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 8px;
    object-fit: cover;
}

.thanks-block .main-grey-block .right-side {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    margin: 40px 27px 40px 0;
    max-width: 543px;
}

.thanks-block .main-grey-block .right-side .top-title {
    display: flex;
    align-items: center;
    gap: 64px;
}


.thanks-block .main-grey-block .right-side .top-title img {
    width: 120px;
    aspect-ratio: 1 / 1;
}

.thanks-block h3 {
    text-align: left;
    font-size: 40px;
}

.thanks-block p {
    text-align: left;
}

.thanks-block .main-grey-block .right-side p {
    margin-bottom: 0 !important;
    line-height: 132% !important;
}

.thanks-block .yellow-link-block {
    background-color: var(--sun-yellow);
    padding: 40px;
    border-radius: 10px;
    transition: all 300ms ease;
    min-height: 360px;
}

.thanks-block .yellow-link-block a {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 24px;
    height: 100%;
}

.thanks-block .yellow-link-block .top-title {
    display: flex;
    align-items: start;
    justify-content: space-between;
    gap: 16px;
}

.thanks-block .yellow-link-block p {
    margin-bottom: 0 !important;
}

.thanks-block .yellow-link-block h3 {
    font-size: clamp(2rem, 1.667rem + 0.69vw, 2.5rem);
}

.thanks-block .yellow-link-block h3::before {
    content: "";
    display: block;
    margin-top: -0.2em;
}

.thanks-block .yellow-link-block h3::after {
    content: "";
    display: block;
    margin-bottom: -0.15em;
}

.thanks-block .yellow-link-block .top-title img {
    display: block;
    padding-top: 3px;
    padding-right: 6px;
}

/* Блок с карточками на другие проекты */

.other-cards-block {
    background-color: var(--grey-100);
    padding-top: 120px;
    padding-bottom: 120px;
}

.other-cards-block .card {
    border: none;
}

.other-cards-block h1 {
    margin: 0 40px;
    margin-bottom: 64px;
}

.other-cards-block h1::before {
    content: "";
    display: block;
    margin-top: -0.16em;
}

.other-cards-block h1::after {
    content: "";
    display: block;
    margin-bottom: -0.15em;
}

.other-cards-container {
    margin: 0 40px;
    display: grid;
    grid-template-columns: 1fr 1fr 1.033fr;
    gap: 10px;
}

.other-cards-block .card-link {
    background-color: var(--sun-yellow);
    border-color: transparent;
    transition: all 300ms ease;
    padding: 0;
}

.other-cards-block .card-link a {
    width: 100%;
    height: 100%;
    padding: 40px 47px 40px 40px;
}

.other-cards-block .card-link a .top-title {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    align-items: center;
}

.other-cards-block .card-link a h3 {
    text-align: left;
    font-size: 40px;
}

.other-cards-block .card-link a img {
    width: 24px;
    height: 24px;
}

/* Блок со статистикой */

.statistic {
    margin-bottom: 120px;
}

.statistic__title {
    grid-column: 1 / -1;
    font-family: "Nochlezhka", "Nunito Sans", sans-serif;
    font-weight: 400;
    font-size: clamp(4.375rem, 3.542rem + 1.74vw, 5.625rem);
    line-height: 100%;
    letter-spacing: -0.01em;
    text-transform: uppercase;
    text-align: left;
    /*margin-bottom: clamp(2.5rem, 0.833rem + 3.47vw, 5rem);*/
    margin-bottom: 68px;
}

.statistic__title::before {
    content: "";
    display: block;
    margin-top: -0.14em;
}

.statistic__title::after {
    content: "";
    display: block;
    margin-bottom: -0.12em;
}

.statistic__left {
    grid-column: span 6;
    justify-self: start;
    align-self: end;
}

.statistic__desc {
    max-width: 510px;
    font-weight: 400;
    font-size: clamp(1.25rem, 1.167rem + 0.17vw, 1.375rem);
    line-height: 132%;
    letter-spacing: -0.03em;
    text-align: left;
}

.statistic__right {
    grid-column: span 6;
}

.statistic__list {
    display: flex;
    flex-direction: column;
}

.statistic__item {
    /*padding: clamp(2.563rem, 2.188rem + 0.78vw, 3.125rem) 0;*/
    padding: 48px 0;
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    align-items: end;
    border-top: 1px solid #000;
}

.statistic__item:last-child {
    border-bottom: 1px solid #000;
}

.statistic__item .item-count {
    font-family: "Nochlezhka", "Nunito Sans", sans-serif;
    font-weight: 400;
    font-size: clamp(4.375rem, 2.958rem + 2.95vw, 6.5rem);
    line-height: 100%;
    letter-spacing: -0.01em;
    text-transform: uppercase;

    grid-column: span 2;
    align-self: center;
}

.statistic__item .item-count::before {
    content: "";
    display: block;
    margin-top: -0.14em;
}

.statistic__item .item-count::after {
    content: "";
    display: block;
    margin-bottom: -0.12em;
}

.statistic__item .item-desc {
    font-size: clamp(1.25rem, 1rem + 0.52vw, 1.625rem);
    line-height: 115%;
    letter-spacing: -0.025em;
    margin-left: 2px;
    max-width: 256px;
    grid-column: span 2;
    text-align: left;
}
.statistic__item .item-link {
    grid-column: span 2;
    justify-self: end;
    font-size: clamp(1.125rem, 0.875rem + 0.52vw, 1.5rem);
    text-align: end;
}

/* Блок 4 фото в ряд */

.four-photos {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px;
    padding-top: 64px;
}

.four-photos img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    aspect-ratio: 1 / 1;
}

/* Поля формы для заявок */

.form-group-white {
    padding: 60px;
    background-color: var(--white);
    border-radius: 10px;
    margin-bottom: 24px;
}

form .form-field {
    display: flex;
    flex-direction: column;
    gap: 8px;
    align-self: end;
}

form .form-field label, form .form-field-title {
    font-weight: 700;
    font-size: 22px;
    line-height: 130%;
    letter-spacing: -0.02em;
}

form .form-field:has(p) {
    gap: 4px;
}

form .form-field:has(p) * {
    text-align: left;
}

form .form-field:has(p) p {
    font-weight: 500;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: -0.02em;
    margin-bottom: 20px;
}

form .form-field input[type="email"] {
    padding: 20px 8px 20px 24px;
}

form .form-field:has(textarea) p {
    margin-bottom: 12px;
}

.btn-fill {
    width: 100%;
}

form .form-agree {
    width: 100%;
    text-align: center;
}

form .form-agree a {
    display: inline;
    text-decoration: underline;
    text-decoration-style: solid;
}

form .form-agree input {
    appearance: none;
    -webkit-appearance: none;
}

form .form-agree label {
    font-weight: 500;
    font-size: 12px;
    line-height: 110%;
    letter-spacing: 0;
    position: relative;
    padding-left: 16px;
    cursor: pointer;
    display: inline;
}

form .form-agree label::before {
    content: "";
    display: block;
    width: 12px;
    height: 12px;
    border: 1px solid var(--black-1000);
    border-radius: 2px;
    position: absolute;
    left: 0;
    top: 2px;
}

form .form-agree input:checked + label::before {
    background: url("../img/icons/done-white-icon.svg"), var(--black-1000);
    background-repeat: no-repeat;
    background-position: center center;
}

form .form-group-step .top-desc {
    grid-column: 1 / -1;
    margin-bottom: 18px;
    margin-top: -5px;
}

form .form-group-step .top-desc:not(:has(p)) {
    margin-bottom: 0;
}

form .form-group-step .top-desc * {
    text-align: left;
}

form .form-group-step .top-desc p {
    font-weight: 400;
    font-size: 18px;
    line-height: 130%;
    letter-spacing: -0.02em;
    color: var(--grey-1000);
}

form .form-group-step .top-desc .top-title {
    display: flex;
    justify-content: space-between;
    gap: 24px;
    align-items: start;
    margin-bottom: 7px;
}

form .form-group-step .top-desc .top-title .steps {
    background-color: var(--black-1000);
    border-radius: 100px;
    padding: 8px 10px;
    font-weight: 500;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: -0.02em;
    text-align: center;
    color: var(--white);
    white-space: nowrap;
    align-self: start;
}

form .form-field-check {
    display: flex;
    column-gap: 49px;
    row-gap: 5px;
    flex-wrap: wrap;
}

form .form-field-check input,
.lk-page__history-filter .filter-item .form-group input {
    appearance: none;
    -webkit-appearance: none;
}

form .form-field-check label,
.lk-page__history-filter .filter-item .form-group label {
    font-family: "Nunito Sans", sans-serif;
    font-weight: 400;
    font-size: 22px;
    line-height: 130%;
    letter-spacing: -0.03em;
    padding-left: 32px;
    position: relative;
    cursor: pointer;
}

form .form-field-check label::before,
.lk-page__history-filter .filter-item .form-group label::before {
    content: "";
    display: block;
    width: 24px;
    height: 24px;
    border: 1px solid var(--black-1000);
    border-radius: 2px;
    position: absolute;
    left: 0;
    top: 45%;
    transform: translateY(-50%);
}

form .form-field-check input:checked + label::before,
.lk-page__history-filter .filter-item .form-group input:checked + label::before {
    background: url("../img/icons/done-yellow-icon.svg"), var(--black-1000);
    background-repeat: no-repeat;
    background-position: center center;
}

form .form-field-check .input-check:has(input[type="radio"]) {
    display: flex;
    padding: 10px 0;
}

form .form-field-check .input-check:has(input[type="checkbox"]) {
    display: flex;
    padding: 4px 0 5px;
}

/* Блок с картой и кнопкой */

.info-map {
    display: flex;
    gap: 10px;
    margin-bottom: 80px;
}

.info-map .button-path {
    border-radius: 10px;
    background-color: var(--sun-yellow);
    max-width: 298px;
    flex: 1 0 0;
}

.info-map .button-path a {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 44px 48px 35px 40px;
    height: 100%;
    border-radius: 10px;

    font-family: "Nochlezhka", sans-serif;
    font-feature-settings: 'ss01' 1;
    font-weight: 400;
    font-size: 30px;
    line-height: 120%;
    letter-spacing: 0;
    text-transform: uppercase;

    transition: all 300ms ease;
}

.info-map .button-path a img {
    max-width: 23px;
    align-self: end;
}

.info-map iframe {
    border-radius: 10px;
    border: 1px solid var(--grey-400);
    flex: 1 0 0;
}

/* Ошибка 404 */

.page-error {
    background-image: url("../img/error404.jpg");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    height: 100vh;
    position: relative;
}

.page-error__content {
    position: absolute;
    right: clamp(3.125rem, -3.089rem + 9.71vw, 8.563rem);
    bottom: 80px;
}

.page-error__content h1 {
    font-size: clamp(3.25rem, 1.667rem + 3.3vw, 5.625rem);
}

.page-error__content h1::before {
    content: "";
    display: block;
    margin-top: -0.14em;
}

.page-error__content h1::after {
    content: "";
    display: block;
    margin-bottom: -0.12em;
}

.page-error__content h1:first-of-type {
    color: var(--white);
    max-width: clamp(41.625rem, 32.054rem + 14.96vw, 50rem);
    text-align: left;
    margin-bottom: 11px;
}

.page-error__content h1:last-of-type {
    padding-left: 150px;
    text-align: left;
    max-width: 715px;
    color: var(--white);
    margin-bottom: 64px;
}

.page-error__content .buttons {
    display: flex;
    gap: 8px;
    padding-left: 150px;
}

.page-error__content .buttons .btn,
.page-error__content .buttons .btn-simple {
    padding: 19px 40px;
    max-width: fit-content;

    font-weight: 600;
    font-size: 18px;
    line-height: 130%;
    letter-spacing: -0.02em;

}

.page-error__content .buttons .btn-simple {
    color: var(--white);
    border: 1px solid var(--white);
}

/* Страница благодарности */

.thanks-page {
    min-height: 100vh;
    background-image: linear-gradient(45deg, rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4)), url("../img/thanks-page.jpg");
    background-repeat: no-repeat;
    /*background-size: cover;*/
    background-size: 126% 100%;
    background-position: left;
    transform: scaleX(-1);
    padding-top: 106px;
    padding-bottom: 80px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.thanks-page__content {
    transform: scaleX(-1);
    background-color: var(--white);
    border-radius: 10px;
    width: calc(100% - 80px);
    max-width: 1207px;
    margin: 120px auto 0;
    padding: 80px 32px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.thanks-page__content h2 {
    margin-bottom: 24px;
}

.thanks-page__content h2::before {
    content: "";
    display: block;
    margin-top: -0.14em;
}

.thanks-page__content h2::after {
    content: "";
    display: block;
    margin-bottom: -0.12em;
}

.thanks-page__content .icon-container {
    width: 120px;
    height: 120px;
}

.thanks-page__content .icon-container img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}

.thanks-page__content-cards {
    display: flex;
    margin-bottom: 24px;
}

.thanks-page__content-cards .content-card {
    padding: 40px 24px;
    border-right: 1px solid #CDCDCD;
    flex: 1 0 0;
    display: flex;
    flex-direction: column;
    gap: 24px;
    justify-content: center;
}

.thanks-page__content-cards .content-card:last-of-type {
    border-right: none;
}

.thanks-page__content-cards .content-card .socials {
    display: flex;
    gap: 16px;
    max-width: 265px;
}

.thanks-page__content-cards .content-card .social img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}

.thanks-page__content-cards .content-card p {
    text-align: left;
}

.thanks-page__content-cards .content-card a {
    display: inline;
    font-weight: 700;
    line-height: 130%;
    letter-spacing: -0.02em;
    text-decoration: underline;
    text-decoration-style: solid;
    text-decoration-thickness: 0;
    text-underline-offset: 2px;
}

.thanks-page__content .btn-simple {
    font-weight: 600;
    font-size: 18px;
    line-height: 130%;
    letter-spacing: -0.02em;
    padding: 21px 40px;
}

/* Окно ввода / Сумма Пожертвования */

.modal-donate-sum .modal-dialog,
.modal-cancel-sub .modal-dialog,
.modal-name .modal-dialog,
.modal-password .modal-dialog {
    position: relative;
    min-width: 660px;
}

.modal-donate-sum .btn-exit,
.modal-cancel-sub .btn-exit,
.modal-name .btn-exit,
.modal-password .btn-exit {
    position: absolute;
    top: 21px;
    right: 20px;
    background-color: transparent;
}

.modal-donate-sum .btn-exit:focus-visible,
.modal-cancel-sub .btn-exit:focus-visible,
.modal-name .btn-exit:focus-visible,
.modal-password .btn-exit:focus-visible {
    outline: none;
}

.modal-donate-sum .modal-content,
.modal-cancel-sub .modal-content,
.modal-name .modal-content,
.modal-password .modal-content {
    padding: 48px 40px 40px;
}

.modal-donate-sum .modal-content h3,
.modal-cancel-sub .modal-content h3,
.modal-name .modal-content h3,
.modal-password .modal-content h3 {
    max-width: 480px;
    margin: 0 auto;
    margin-bottom: 48px;
}

.modal-donate-sum .modal-content h3::before,
.modal-cancel-sub .modal-content h3::before,
.modal-name .modal-content h3::before,
.modal-password .modal-content h3::before {
    content: "";
    display: block;
    margin-top: -0.2em;
}

.modal-donate-sum .modal-content h3::after,
.modal-cancel-sub .modal-content h3::after,
.modal-name .modal-content h3::after,
.modal-password .modal-content h3::after {
    content: "";
    display: block;
    margin-bottom: -0.2em;
}

.modal-donate-sum .modal-content label {
    font-family: "Nunito Sans", sans-serif;
    font-weight: 700;
    font-size: 22px;
    line-height: 130%;
    letter-spacing: -0.02em;
    color: var(--black-1000);
    margin-bottom: 8px;
}

.modal-donate-sum .modal-content input {
    padding: 22px 24px;
}

/* Отмена подписки */
.modal-cancel-sub .modal-content h3 {
    margin-bottom: 32px;
}

.modal-cancel-sub .modal-content p {
    font-weight: 400;
    font-size: 18px;
    line-height: 130%;
    letter-spacing: -0.02em;
    margin-bottom: 40px;
}

.modal-cancel-sub .modal-content .buttons {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

.modal-cancel-sub .modal-content .buttons .btn-simple {
    grid-column: 1 / -1;
}

.modal-cancel-sub .modal-content .buttons .btn-simple,
.modal-cancel-sub .modal-content .buttons .btn,
.modal-cancel-sub .modal-content .buttons .btn-subscribe {
    padding: 21px 0;
    font-weight: 600;
    font-size: 18px;
    line-height: 130%;
    letter-spacing: -0.02em;
}

/* Окно ввода / Ваше имя */

.modal-name input {
    margin-bottom: 32px;
}

.modal-name .buttons,
.modal-password .buttons {
    display: flex;
    gap: 10px;
}

.modal-name .buttons .btn,
.modal-password .buttons .btn,
.modal-name .buttons .btn-simple,
.modal-password .buttons .btn-simple {
    padding: 21px 0;
    flex: 1 0 0;
    font-size: 18px;
}

/* Окно ввода / Пароль */

.input-password {
    display: flex;
    flex-direction: column;
    gap: 8px;
    position: relative;
    margin-bottom: 32px;
}

.input-password label {
    font-weight: 700;
    font-size: 22px;
    line-height: 130%;
    letter-spacing: -0.02em;
    color: var(--black-1000);
}

.input-password input {
    padding-right: 50px;
}

.input-password .password-visible {
    position: absolute;
    bottom: 17px;
    right: 8px;
    cursor: pointer;
}

.input-password .password-visible-true {
    display: none;
    margin-bottom: 5px;
}

input#tumbler {
    appearance: none;
    --webkit-appearance: none;
}

.tumbler {
    cursor: pointer;
    width: 50px;
    height: 30px;
    border-radius: 100px;
    position : relative;
    background-color: var(--grey-1000);
}

.tumbler-container {
    width: 100%;
    max-width: 300px;
    display: flex;
    justify-content: end;
    align-items: center;
    gap: 8px;
}

.tumbler-text {
    cursor: pointer;
}

.tumbler-container .tumbler-text::before {
    content: "Не хочу получать";
}

.tumbler-container:has(input:checked) .tumbler-text:before {
    content: "Хочу получать";
}

.tumbler::after {
    content: "";
    width: 22px;
    height: 22px;
    border-radius: 50%;
    position: absolute;
    background-color: var(--grey-800);
    inset: 4px auto 4px 4px;
    transition: all 300ms ease;
}

input:checked + .tumbler::after {
    background-color: var(--sun-yellow);
    inset: 4px 4px 4px 24px;
}

input:checked + .tumbler {
    background-color: var(--black-1000);
}

/* Кастомный календарь */

input.datepicker-custom {
    border: none;
    background: none;
    font-weight: 500;
    font-size: clamp(1.25rem, 0.821rem + 0.67vw, 1.625rem);
    line-height: 110%;
    letter-spacing: -0.03em;
    display: flex;
    gap: 8px;
    align-items: center;
    padding: 0;
    text-align: right;
    border-radius: 0;
    cursor: pointer;
}

input.datepicker-custom:focus, input.datepicker-custom:focus-visible {
    border: none;
}

.ui-widget.ui-widget-content {
    padding: 24px;
    border: 1px solid var(--grey-200);
    border-radius: 10px;
    min-width: 360px;
    box-shadow: 6px -6px 20px 0 #F0F0F0;
    margin-top: 8px;
}

.ui-datepicker .ui-datepicker-header {
    background: transparent;
    border: none;
    height: fit-content;
    padding: 0;
    display: flex;
    align-items: center;
    margin-bottom: 8px;
}

.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next {
    width: 32px;
    height: 32px;
    cursor: pointer;
    position: static;
}

.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span {
    position: relative;
}

.ui-datepicker .ui-datepicker-prev {
    margin-left: auto;
}

.ui-datepicker .ui-datepicker-next:hover,
.ui-datepicker .ui-datepicker-prev:hover {
    background: none;
    border: none;
    transform: unset;
    font-weight: unset;
    color: unset;
    right: 2px;
    top: 2px;
}

.ui-datepicker .ui-datepicker-next:focus-visible {
    outline: none;
}

.ui-datepicker .ui-datepicker-prev span {
    background-image: url("../img/icons/right-arrow-calendar.svg");
    background-position: center;
    transform: rotate(180deg);
}

.ui-datepicker .ui-datepicker-next span {
    background-image: url("../img/icons/right-arrow-calendar.svg");
    background-position: center;
}

.ui-datepicker .ui-datepicker-title {
    font-family: "Nunito Sans", sans-serif;
    font-weight: 600;
    font-size: 18px;
    line-height: 130%;
    letter-spacing: -0.02em;
    color: var(--black-1000);
    margin: 0;
    order: -1;
}

.ui-datepicker table {
    border-collapse: collapse;
    margin: 0;
}

.ui-datepicker table thead th {
    border: 1px solid var(--grey-500);
    font-family: "Nunito Sans", sans-serif;
    font-weight: 500;
    font-size: 12px;
    line-height: 110%;
    letter-spacing: 0;
    text-align: center;
    vertical-align: middle;
    color: var(--black-1000);
    padding: 14px 10px;
    text-transform: uppercase;
}

.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default, .ui-button, html .ui-button.ui-state-disabled:hover, html .ui-button.ui-state-disabled:active {
    border: none;
    background-color: transparent;
}

.ui-datepicker td {
    border: 1px solid #D5D4DF;
    padding: 0;
    cursor: pointer;
}

.ui-datepicker td span, .ui-datepicker td a {
    padding: 12px 10px;
    font-family: "Nunito Sans", sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: -0.02em;
    text-align: center;
    vertical-align: middle;
    color: var(--black-1000);
}

.ui-state-highlight, .ui-widget-content .ui-state-highlight, .ui-widget-header .ui-state-highlight {
    background-color: inherit;
    color: var(--black-1000);
}

.ui-state-active, .ui-widget-content .ui-state-active, .ui-widget-header .ui-state-active, a.ui-button:active, .ui-button:active, .ui-button.ui-state-active:hover {
    background-color: var(--sun-yellow);
    color: var(--black-1000);
}

.ui-state-disabled, .ui-widget-content .ui-state-disabled {
    opacity: 1;
    background-color: var(--grey-100);
}

.ui-widget-header .ui-state-disabled {
    background-color: inherit;
}

.ui-state-disabled, .ui-widget-content .ui-state-disabled span, .ui-widget-header .ui-state-disabled span {
    color: var(--grey-900);
}

.ui-state-default {
    transition: all 300ms ease;
}

.ui-state-default:hover {
    background-color: var(--grey-200);
}

.ui-state-active:hover {
    background-color: var(--sun-yellow);
}

.ui-priority-secondary, .ui-widget-content .ui-priority-secondary, .ui-widget-header .ui-priority-secondary {
    color: var(--grey-500);
}

.ui-state-disabled, .ui-widget-content .ui-state-disabled, .ui-widget-header .ui-state-disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

/* Окно об успешной отправке */

.success-window .modal-dialog {
    max-width: 660px;
}

.success-window .modal-content {
    background-color: var(--sun-yellow);
    padding-bottom: 65px;
}

.success-window .modal-header {
    border: none;
    justify-content: right;
    padding: 32px;
    padding-bottom: 0;
}

.success-window .close-btn {
    background: none;
    border: none;
    outline: none;
}

.success-window h3 {
    margin-bottom: 14px;
}

.success-window p {
    font-weight: 400;
    font-size: 18px;
    line-height: 130%;
    letter-spacing: -0.02em;
}

.success-window .modal-body {
    padding: 8px 64px;
}

/* Левое меню для страниц взаимодействие с государством и делимся опытом */

.left-nav {
    grid-column: span 3;
    width: 360px;
    background-color: var(--white);
    border-radius: 10px;
    box-shadow: 6px -6px 20px 0 #F0F0F0;
    max-height: fit-content;
    margin-right: 32px;
    grid-row: 1 / span 10;
    height: fit-content;
}

.left-nav__list {
    padding: 8px;
}

.left-nav__list .nav-item {
    padding: 1.46rem 8px;
    font-family: "Nunito Sans", sans-serif;
    font-weight: 400;
    font-size: 18px;
    line-height: 130%;
    letter-spacing: -0.02em;
    color: var(--black-1000);
    border-bottom: 1px solid #E8E8E8;
    margin: 0 8px;
    transition: all 300ms ease;
}

.left-nav__list li:last-of-type .nav-item,
.left-nav__list .nav-item.active {
    border-bottom: none;
}

.left-nav__list .nav-item span {
    display: block;
    font-family: "Nunito Sans", sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: -0.02em;
    color: var(--grey-1000);
    margin-top: 8px;
}

.left-nav__list .nav-item.active span {
    color: var(--black-1000);
}

.left-nav__list .nav-item.active {
    background-color: var(--sun-yellow);
    font-weight: 600;
    border-radius: 8px;
    margin: 0;
    padding: 24px 16px;
}

.left-nav__list .dropdown-toggle::after {
    display: block;
    width: 24px;
    height: 24px;
    background: url("../img/icons/arrow-down.svg"), var(--grey-100);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 14px;
    border: none;
    border-radius: 50%;
    transition: all 300ms ease;
}

.left-nav__list .dropdown-toggle {
    display: flex;
    justify-content: space-between;
    margin-right: 0;
}

.left-nav__list .dropdown-toggle.show {
    border-bottom: 0;
    margin-left: 0;
    padding-left: 0;
    padding-right: 0;
}

.left-nav__list .dropdown-toggle.show:after {
    transform: rotate(180deg)
}

.left-nav__list .dropdown:has(.dropdown-toggle.show) {
    margin: 0;
    background-color: var(--sun-yellow);
    border-radius: 10px;
    padding: 0 16px 24px;
}

.left-nav__list .dropdown-menu {
    position: static !important;
    transform: unset !important;
    padding: 0;
    margin: 0;
    border: none;
    border-radius: 0;
    background-color: var(--sun-yellow);
}

.left-nav__list .dropdown-item {
    padding: 0;
    white-space: break-spaces;
    font-family: "Nunito Sans", sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: -0.02em;
    color: var(--black-1000);
    margin-top: 16px;
    padding-bottom: 3px;
    border-bottom: 1px solid var(--yellow-dark);
    transition: all 300ms ease;
}

.left-nav__list .dropdown-item.active {
    font-weight: 700;
    background-color: inherit;
    border-color: var(--black-1000);
}

.left-nav__list li:first-of-type .dropdown-item {
    margin-top: 0;
}

.left-nav-mobile {
    display: none;
    z-index: 10;
}

.dropdown-submenu .dropdown-menu {
    position: static !important;
    transform: unset !important;
    display: none;
}

.dropdown-submenu .dropdown-menu.show {
    display: block;
}

.left-nav-mobile__list .nav-item span {
    display: block;
    font-family: "Nunito Sans", sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 130%;
    letter-spacing: 0;
    color: var(--grey-1000);
    margin-top: 8px;
}

/* Типовые блоки для страниц взаимодействие с государством и делимся опытом */

.content-wrapper {
    grid-column: 4 / -1;
    display: flex;
    flex-direction: column;
    gap: 80px;
    padding-top: 40px;
}

.content-wrapper * {
    text-align: left;
}

/* Блок с текстом и описанием */

.content-wrapper .title-description-block {
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.content-wrapper .title-description-block h2 {
    font-size: clamp(3.25rem, 2.679rem + 0.89vw, 3.75rem);
    line-height: 102%;
}

.content-wrapper .title-description-block h2::before {
    content: "";
    display: block;
    margin-top: -0.14em;
}

.content-wrapper .title-description-block h2::after {
    content: "";
    display: block;
    margin-bottom: -0.12em;
}

.content-wrapper .title-description-block .description {
    display: flex;
    flex-direction: column;
    gap: 30px;
}

.content-wrapper .title-description-block.small-title h2 {
    font-size: 40px;
    letter-spacing: 0;
}

.content-wrapper .title-description-block.gap-64 {
    gap: 64px;
}

.content-wrapper .title-description-block.gap-64 .description {
    padding-top: 5px;
}

/* Блок со списком */

.content-wrapper .list-block {
    display: flex;
    flex-direction: column;
    gap: 32px;
}

.content-wrapper .list-block h3 {
    font-size: clamp(2rem, 1.429rem + 0.89vw, 2.5rem);
}

.content-wrapper .list-block h3::before {
    content: "";
    display: block;
    margin-top: -0.2em;
}

.content-wrapper .list-block h3::after {
    content: "";
    display: block;
    margin-bottom: -0.19em;
}

.content-wrapper .list-block ul {
    list-style: disc;
    padding-left: 2rem;
    display: flex;
    flex-direction: column;
    gap: 0.04em;
}

.content-wrapper .list-block ul li {
    font-family: "Nunito Sans", sans-serif;
    font-weight: 400;
    font-size: 22px;
    line-height: 130%;
    letter-spacing: -0.03em;
}

/* Блок с описанием и картинкой */

.content-wrapper .image-description-block h2 {
    margin-bottom: 64px;
    font-size: clamp(3.25rem, 2.679rem + 0.89vw, 3.75rem);
    overflow-wrap: anywhere;
}

.content-wrapper .image-description-block .img-desc-wrapper {
    display: flex;
    gap: 40px;
}

.content-wrapper .image-description-block .desc-wrapper {
    max-width: clamp(31.25rem, -11.875rem + 47.92vw, 45.625rem);
    flex: 2 0 0;
}

.content-wrapper .image-description-block .img-desc-wrapper p:not(:last-of-type) {
    margin-bottom: 32px;
}

.content-wrapper .image-description-block p:not(:last-of-type) {
    margin-bottom: 30px;
}

.content-wrapper .image-description-block p:first-of-type {
    margin-top: 40px;
}

.content-wrapper .image-description-block .img-desc-wrapper p:first-of-type {
    margin-top: 0;
}

.content-wrapper .image-description-block .img-container {
    width: 100%;
    overflow: hidden;
    position: relative;
    min-height: 360px;
    flex: 1 0 0;
}

.content-wrapper .image-description-block .img-container img {
    position: absolute;
    top:50%;
    left:50%;
    height:100%;
    width:100%;
    min-width:100%;
    min-height:100%;
    transform:translate(-50%, -50%);
    object-fit: cover;
}

.content-wrapper .image-description-block h2::before {
    content: "";
    display: block;
    margin-top: -0.14em;
}

.content-wrapper .image-description-block h2::after {
    content: "";
    display: block;
    margin-bottom: -0.12em;
}

.content-wrapper .photo-button-block .desc-wrapper {
    max-width: 669px;
    padding-top: 10px;
}

.content-wrapper .photo-button-block .btn-subscribe {
    max-width: fit-content;
    padding: 19px 40px;
    margin-top: 41px;
}

.content-wrapper .experience-page-photo .img-container {
    flex: 2 0 0;
    max-width: 607px;
}

.content-wrapper .experience-page-photo .desc-wrapper {
    max-width: unset;
}

.content-wrapper .two-buttons-block .buttons {
    display: flex;
    gap: 8px;
    margin-top: 40px;
}

.content-wrapper .two-buttons-block .buttons .btn-subscribe {
    margin-top: 0;
}

.content-wrapper .two-buttons-block .buttons .btn-simple {
    padding: 19px clamp(1.313rem, -1.5rem + 3.33vw, 2.5rem);
    font-size: 18px;
}

/* Блок с 4 карточками */

.content-wrapper .four-cards-block {
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.content-wrapper .four-cards-block .cards-wrapper {
    display: grid;
    grid-template-columns: clamp(31.25rem, -6.941rem + 45.26vw, 47.375rem) 1fr;
    gap: 10px;
}

.content-wrapper .four-cards-block__card {
    background-color: var(--white);
    border-radius: 10px;
    padding: 32px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 40px;
}

.content-wrapper .four-cards-block__card .card-count {
    font-family: "Nunito Sans", sans-serif;
    font-weight: 400;
    font-size: 22px;
    line-height: 130%;
    letter-spacing: -0.03em;
    color: var(--black-1000);
}

.content-wrapper .four-cards-block__card .desc-wrapper {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.content-wrapper .four-cards-block h3 {
    letter-spacing: 0;
    font-size: 40px;
}

.content-wrapper .four-cards-block h3::before {
    content: "";
    display: block;
    margin-top: -0.2em;
}

.content-wrapper .four-cards-block h3::after {
    content: "";
    display: block;
    margin-bottom: -0.19em;
}

.content-wrapper .four-cards-block__card p {
    font-size: 22px;
    line-height: 133%;
    letter-spacing: -0.03em;
}

.content-wrapper .four-cards-block__card p b {
    font-size: 22px;
    font-weight: 700;
    letter-spacing: -0.02em;
}

/* Блок с карточками с рамками */

.content-wrapper .border-items-block {

}

.content-wrapper .border-items-block h3 {
    font-size: 40px;
    letter-spacing: 0;
    margin-bottom: 24px;
}

.content-wrapper .border-items-block h3::before {
    content: "";
    display: block;
    margin-top: -0.3em;
}

.content-wrapper .border-items-block h3::after {
    content: "";
    display: block;
    margin-bottom: -0.16em;
}

.content-wrapper .border-items-block h3 + p {
    margin-bottom: 48px;
}

.content-wrapper .border-items-block__item {
    padding: 56px 0;
    display: grid;
    grid-template-columns: repeat(9, 1fr);
    column-gap: 10px;
    border-top: 1px solid #000000;
}

.content-wrapper .border-items-block__item:last-of-type {
    border-bottom: 1px solid #000000;
}

.content-wrapper .border-items-block__item .item-count {
    font-family: "Nochlezhka", sans-serif;
    font-feature-settings: 'ss01' 1;
    font-weight: 400;
    font-size: 30px;
    line-height: 120%;
    letter-spacing: 0;
    text-transform: uppercase;
    grid-column: span 2;
}

.content-wrapper .border-items-block__item h4 {
    grid-column: 3 / -1;
    margin-bottom: 40px;
}

.content-wrapper .border-items-block__item h4::before,
.content-wrapper .border-items-block__item .item-count::before {
    content: "";
    display: block;
    margin-top: -0.3em;
}

.content-wrapper .border-items-block__item h4::after,
.content-wrapper .border-items-block__item .item-count::after {
    content: "";
    display: block;
    margin-bottom: -0.16em;
}

.content-wrapper .border-items-block__item p {
    grid-column: 3 / -1;
}

.content-wrapper .border-items-block__item p:not(:last-of-type) {
    margin-bottom: 29px;
}

.content-wrapper .three-cards-block h3 {
    font-size: 40px;
    margin-bottom: 40px;
}

.content-wrapper .three-cards-block h3::before {
    content: "";
    display: block;
    margin-top: -0.2em;
}

.content-wrapper .three-cards-block h3::after {
    content: "";
    display: block;
    margin-bottom: -0.16em;
}

.content-wrapper .three-cards-block .cards-wrapper {
    display: flex;
    gap: 10px;
    margin-bottom: 40px;
}

.content-wrapper .three-cards-block__card {
    padding: 32px;
    background-color: var(--white);
    border-radius: 10px;
    flex: 1 0 0;
    display: flex;
    flex-direction: column;
}

.content-wrapper .three-cards-block__card .card-count {
    font-family: "Nunito Sans", sans-serif;
    font-weight: 400;
    font-size: 22px;
    line-height: 130%;
    letter-spacing: -0.03em;
    margin-bottom: 40px;
}

.content-wrapper .three-cards-block p {
    margin-bottom: 32px;
}

.content-wrapper .three-cards-block p:last-of-type {
    margin-bottom: 0;
}

.content-wrapper .three-cards-block__card p {
    font-size: 22px;
    line-height: 132%;
    letter-spacing: -0.03em;
    margin-bottom: 0;
}

.content-wrapper .three-cards-block__card p b {
    font-weight: 700;
    margin-bottom: 16px;
    letter-spacing: -0.02em;
}

.content-wrapper .three-cards-block__card p:has(b) {
    margin-bottom: 16px;
    margin-top: auto;
}

.content-wrapper .three-cards-block__card p:not(:has(b)) {
    margin-top: auto;
}

/* Блок с двумя карточками */

.content-wrapper .two-cards-block h3 {
    margin-bottom: 40px;
    font-size: 40px;
}

.content-wrapper .two-cards-block p {
    margin-bottom: 32px;
}

.content-wrapper .two-cards-block p:last-of-type {
    margin-bottom: 0;
}

.content-wrapper .two-cards-block .cards-wrapper {
    display: grid;
    grid-template-columns: 452px 1fr;
    column-gap: 10px;
    margin-bottom: 40px;
}

.content-wrapper .two-cards-block__card {
    background-color: var(--white);
    padding: 32px;
    border-radius: 10px;
    display: flex;
    flex-direction: column;
}

.content-wrapper .two-cards-block__card .card-count {
    font-family: "Nunito Sans", sans-serif;
    font-weight: 400;
    font-size: 22px;
    line-height: 130%;
    letter-spacing: -0.03em;
    color: var(--black-1000);
    margin-bottom: 40px;
}

.content-wrapper .two-cards-block__card p {
    margin-top: auto;
    margin-bottom: 0;
}

/* Блок с двумя фото */

.content-wrapper .two-photo-block {
    display: flex;
    gap: 10px;
    margin-top: -25px;
}

.content-wrapper .two-photo-block .img-container {
    height: 400px;
    flex: 1 0 0;
}

.content-wrapper .two-photo-block .img-container img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Блок со списком с ссылками */

.content-wrapper .links-block {
}

.content-wrapper .links-block__item {
    padding: 40px 0;
    border-top: 1px solid var(--black-1000);
    display: grid;
    grid-template-columns: 10fr 1fr;
    -webkit-column-gap: 40px;
    -moz-column-gap: 40px;
    column-gap: 40px;
}

.content-wrapper .links-block__item:last-of-type {
    border-bottom: 1px solid var(--black-1000);
}

.content-wrapper .links-block__item .tags {
    display: flex;
    gap: 4px;
    margin-bottom: 24px;
}

.content-wrapper .links-block__item .tags .tag {
    background-color: var(--white);
    border-radius: 100px;
    padding: 6px 10px;
    font-family: "Nunito Sans", sans-serif;
    font-weight: 500;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: -0.02em;
    text-align: center;
}

.content-wrapper .links-block__item h4 {
    grid-column: 1 / span 1;
    letter-spacing: 0.002em;
}

.content-wrapper .links-block__item h4::before {
    content: "";
    display: block;
    margin-top: -0.2em;
}

.content-wrapper .links-block__item h4::after {
    content: "";
    display: block;
    margin-bottom: -0.2em;
}

.content-wrapper .links-block__item p {
    grid-column: 1 / span 1;
    color: var(--grey-1000);
    margin-top: 24px;
}

.content-wrapper .links-block__item .btn-subscribe {
    grid-row: 1 / span 3;
    grid-column: 2;
    height: fit-content;
    width: fit-content;
    align-self: center;
}

.content-wrapper .links-block h2 {
    margin-bottom: 64px;
    font-size: 60px;
}

.content-wrapper .links-block h2::before {
    content: "";
    display: block;
    margin-top: -0.14em;
}

.content-wrapper .links-block h2::after {
    content: "";
    display: block;
    margin-bottom: -0.12em;
}

/* Блок со ссылкой на телеграм */

.telegram-invoice {
    background-color: var(--sun-yellow);
    border-radius: 10px;
    padding: 8px;
    grid-column: 4 / -1;
    margin-top: 80px;
    margin-bottom: 120px;
    height: fit-content;
}

.telegram-invoice * {
    text-align: left;
}

.telegram-invoice__inner {
    border: 1px dashed #000000;
    padding: 40px;
    background-image: url("../img/icons/tg-invoice-icon.svg");
    background-repeat: no-repeat;
    background-position: calc(100% - 40px) top;
    display: grid;
    grid-template-columns: clamp(20.625rem, 7.5rem + 14.58vw, 25rem) 1fr;
    align-items: center;
    column-gap: clamp(0.625rem, -5rem + 6.25vw, 2.5rem);
    border-radius: 6px;
}

.telegram-invoice__inner h2 {
    grid-row: 1 / span 2;
    font-size: clamp(3.25rem, 1.75rem + 1.67vw, 3.75rem);
}

.telegram-invoice__inner p {
    max-width: 600px;
    margin-bottom: 32px;
}

.telegram-invoice__inner .btn-subscribe {
    max-width: fit-content;
    text-align: center;
}

/* Блок с контаком со страницы Делимся опытом */

.grey-card-contact {
    grid-column: 4 / -1;
    background-color: #EBEBEB;
    border-radius: 10px;
    padding: 32px 40px;
    display: flex;
    gap: 9px;
    margin-top: 40px;
    margin-bottom: 40px;
}

.grey-card-contact * {
    text-align: left;
}

.grey-card-contact h4 {
    max-width: 433px;
    margin-right: 55px;
}

.grey-card-contact .contact-item {
    display: flex;
    flex-direction: column;
    padding-top: 8px;
    border-top: 1px solid var(--black-1000);
    flex: 1 0 0;
    min-width: 220px;
}

.grey-card-contact .contact-item a {
    font-weight: 400;
    font-size: 18px;
    line-height: 130%;
    letter-spacing: -0.02em;
    margin-top: 8px;
}

.grey-card-contact .contact-item p {
    font-weight: 400;
    font-size: 18px;
    line-height: 130%;
    letter-spacing: -0.02em;
}

.grey-card-contact .contact-item p b {
    font-weight: 700;
    font-size: 22px;
    line-height: 130%;
    letter-spacing: -0.02em;
}

.grey-card-contact .contact-item:has(img) {
    display: grid;
    grid-template-columns: 70px 1fr;
    column-gap: 16px;
    min-width: 340px;
}

.grey-card-contact .contact-item:has(img) p {
    grid-column: 2;
}

.grey-card-contact .contact-item .img-container {
    width: 70px;
    height: 70px;
    border-radius: 50%;
    grid-row: 1 / span 2;
}

.grey-card-contact .contact-item .img-container img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 50%;
}

/* Блок с видео */

.content-wrapper .video-block {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}

.content-wrapper .video-block h2 {
    grid-column: 1 / -1;
    margin-bottom: 28px;
}

.content-wrapper .video-block h2::before {
    content: "";
    display: block;
    margin-top: -0.14em;
}

.content-wrapper .video-block h2::after {
    content: "";
    display: block;
    margin-bottom: -0.12em;
}

.content-wrapper .mt-40 {
    margin-top: 40px;
}

.content-wrapper .video-item {
    background: var(--white);
    border-radius: 10px;
    padding: 32px;
    display: flex;
    flex-direction: column;
}

.content-wrapper .video-item a,
.content-wrapper .video-item iframe {
    margin-bottom: 64px;
    height: 381px;
    width: 100%;
    position: relative;
    border-radius: 6px;
}

.content-wrapper .video-item a::before {
    content: "";
    display: block;
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background: url("../img/icons/play-icon.svg"), var(--sun-yellow);
    background-repeat: no-repeat;
    background-position: 60% center;
    background-size: 35%;
    position: absolute;
    top: 24px;
    left: 24px;
    z-index: 5;
}

.content-wrapper .video-item a img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: left;
    border-radius: 6px;
}

.content-wrapper .video-item a::after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background-color: #0000004D;
    position: absolute;
    inset: 0;
}

.content-wrapper .video-item p {
    margin-top: auto !important;
}

.content-wrapper .image-description-block .video-item {
    width: 100%;
    max-width: clamp(21.875rem, -16.168rem + 45.09vw, 37.938rem);
    height: fit-content;
}

.content-wrapper .image-description-block .video-item a,
.content-wrapper .image-description-block .video-item iframe {
    height: 337px;
}

.content-wrapper .image-description-block:has(.video-item) .desc-wrapper {
    max-width: unset;
}

/* Описание с кнопками */

.content-wrapper .description-buttons-block .buttons {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.content-wrapper .description-buttons-block .buttons .btn-subscribe,
.content-wrapper .description-buttons-block .buttons .btn-simple {
    padding: 19px 40px;
    font-size: 18px;
    letter-spacing: -0.02em;
}

.content-wrapper .description-buttons-block h2 {
    margin-bottom: 24px;
}

/* Табы на переключение формата Кто помогает */

.content-wrapper .tabs-format {
    display: flex;
    gap: 8px;
}

.content-wrapper .tabs-format li {
    flex: 1 0 0;
}

.content-wrapper .tabs-format .tab-item {
    font-family: "Nunito Sans", sans-serif;
    font-weight: 400;
    font-size: 22px;
    line-height: 130%;
    letter-spacing: -0.03em;
    text-align: center;
    background-color: var(--grey-200);
    border-radius: 10px;
    padding: 19px 0;
    transition: all 300ms ease;
}

.content-wrapper .tabs-format .tab-item.active {
    color: var(--white);
    background-color: var(--black-1000);
}

/* Карта с организациями */

.org-map {
    height: 822px;
    border-radius: 10px;
    margin-top: -56px;
    margin-bottom: 24px;
}

.org-list {
    margin-top: -56px;
}

.map-container {
    display: flex;
    flex-direction: column;
}

.map-container .btn {
    font-size: 18px;
    padding: 19px 40px;
    max-width: fit-content;
    align-self: center;
}

/* Reports */

.reports {
    padding: 213px 40px 120px;
}

.reports .tab-pane-content {
    display: grid;
    grid-template-columns: 1fr 1fr;
    column-gap: 48px;
}

.reports .tabs {
    margin-top: 54px;
    margin-bottom: 49px;
}

.reports-list {
    display: flex;
    flex-direction: column;
}

.reports-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 28px 0;
    border-top: 1px solid var(--grey-700);
}

.reports-item:last-of-type {
    border-bottom: 1px solid var(--grey-700);
}

.reports-item-info {
    display: flex;
    flex-direction: column;
    gap: 10px;
    align-items: start;
}

.reports-item-info h4 {
    font-size: 30px;
    text-align: left;
}

.reports-tab {
    font-weight: 500;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: -0.02em;
    text-align: center;
    color: var(--black-1000);
    padding: 8px 10px;
    background-color: var(--white);
    border-radius: 100px;
}

.reports .tab-pane .btn-subscribe {
    margin-top: 0;
}

.reports .tab-pane .btn-simple {
    display: none;
}

@media (hover: hover) {
    .support__form input + label:hover {
        background-color: var(--green);
        color: var(--black-1000);
    }

    .form-donate__item input + label:hover {
        background-color: var(--green);
        color: var(--black-1000);
    }

    .support__form .form-btn:hover {
        background: transparent;
        border: 1px solid var(--black-1000);
        color: var(--black-1000);
    }

    .circle-card .img-container img:hover {
        transform: scale(1.05);
    }

    .personal-modal .modal-close-btn:hover, .supporter-modal .modal-close-btn:hover {
        background-color: var(--green);
    }

    .flyer-inner .download-buttons .btn-subscribe:hover svg {
        fill: var(--black-1000);
    }

    .flyers-block .instruction-link a:hover {
        background-color: var(--green);
    }

    .swiper-mobile-main .swiper-button-next:hover::after,
    .swiper-mobile-main .swiper-button-prev:hover::after {
        background: url("../../assets/img/icons/menu-arrow-down.svg"), var(--green);
        background-repeat: no-repeat, no-repeat;
        background-position: center 60%;
        background-size: 16px auto;
    }

    .client-modal .modal__close-btn:hover {
        background: var(--green);
    }

    .client-modal .modal__close-btn:hover {
        background-color: var(--grey-100);
    }

    .six-circle-block__link a:hover {
        background-color: var(--green);
    }

    .six-circle-block .img-container img:hover {
        transform: scale(1.05);
    }

    .pagination .arrow-prev:hover,
    .pagination .arrow-next:hover {
        background-color: var(--green);
    }

    .thanks-block .yellow-link-block:hover {
        background-color: var(--green);
    }

    .other-cards-block .card-link:hover  {
        background-color: var(--green);
    }

    .info-map .button-path a:hover {
        background-color: var(--green);
    }

    .page-error__content .buttons .btn-simple:hover {
        color: var(--black-1000);
        border-color: transparent;
    }

    .left-nav__list .nav-item:hover {
        font-weight: 600;
    }

    .left-nav__list .dropdown-item:hover {
        background-color: inherit;
        font-weight: 600;
    }

    .content-wrapper .tabs-format .tab-item:not(.active):hover {
        background-color: var(--green);
    }

    .reports .tab-pane .btn-subscribe:hover {
        background-color: var(--green);
        border-color: var(--green);
        color: var(--black-1000);
    }
}

/* THANK YOU START */

.thank-you__left {
    display: flex;
    flex-direction: column;
    gap: 57px;
    background-color: var(--black-1000);
    border-radius: 10px;
    grid-column: 1 / span 8;
    grid-row: 1 / span 3;
    padding: 80px 0;
}

.thank-you__left-header {
    color: #E4E4E4;
    text-align: center;
    padding: 0 100px;
}

.thank-you__left-img {
    object-fit: contain;
    height: 100%;
    margin: 0 auto;
}

.thank-you__left-text {
    color: #ECECEC;
    max-width: 683px;
    margin: 0 auto;
}

.thank-you__right {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    background-color: var(--sun-yellow);
    border-radius: 10px;
    grid-column: 9 / span 4;
    grid-row: 1 / span 3;
    padding: 40px 0;
}

.thank-you__right-header-with-arrow {
    padding: 0 40px;
    display: flex;
    align-items: start;
    justify-content: space-between;
    gap: 16px;
}

.thank-you__right-header-with-arrow>h3 {
    text-align: start;
}

.thank-you__right-text {
    padding: 0 40px;
    text-align: start;
}

/* THANK YOU END */

.danger-text {
    color: #FB3B3B;
}

.shake-horizontal {
    -webkit-animation: shake-horizontal 0.8s cubic-bezier(0.455, 0.030, 0.515, 0.955) both;
    animation: shake-horizontal 0.8s cubic-bezier(0.455, 0.030, 0.515, 0.955) both;
}
@-webkit-keyframes shake-horizontal {
    0%,
    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
    10%,
    30%,
    50%,
    70% {
        -webkit-transform: translateX(-10px);
        transform: translateX(-10px);
    }
    20%,
    40%,
    60% {
        -webkit-transform: translateX(10px);
        transform: translateX(10px);
    }
    80% {
        -webkit-transform: translateX(8px);
        transform: translateX(8px);
    }
    90% {
        -webkit-transform: translateX(-8px);
        transform: translateX(-8px);
    }
}
@keyframes shake-horizontal {
    0%,
    100% {
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }
    10%,
    30%,
    50%,
    70% {
        -webkit-transform: translateX(-10px);
        transform: translateX(-10px);
    }
    20%,
    40%,
    60% {
        -webkit-transform: translateX(10px);
        transform: translateX(10px);
    }
    80% {
        -webkit-transform: translateX(8px);
        transform: translateX(8px);
    }
    90% {
        -webkit-transform: translateX(-8px);
        transform: translateX(-8px);
    }
}

.tab-content {
    grid-column: 1/ -1;
}

.content-list ul,
.content-list ol,
ul.list,
ol.list {
    font-weight: 400;
    font-size: 22px;
    line-height: 130%;
    letter-spacing: -0.03em;
    vertical-align: bottom;
    text-align: left;
    margin-bottom: 30px;
    padding-left: 2rem;
}

.content-list ul,
ul.list {
    list-style-type: disc;
}

.content-list ol,
ol.list {
    list-style-type: decimal;
}

/* Скроллер */
.corporate-help-page__logo-scroller {
    background-color: var(--grey-100);
}

.corporate-help-page__logo-scroller .scroller-item img {
    width: 279px;
    height: 160px;
    object-fit: contain;
}

.corporate-help-page__logo-scroller .scroller-container {
    width: 100%;
    overflow: hidden;
    position: relative;
}

.corporate-help-page__logo-scroller .scroller-container.top-row {
    margin-bottom: 10px;
    margin-top: 64px;
}

.corporate-help-page__logo-scroller .scroller-wrapper {
    display: flex;
    width: max-content;
}

.corporate-help-page__logo-scroller .scroller-item {
    flex: 0 0 auto;
    /*width: 299px;*/
    /*height: 342px;*/
    margin: 0 5px;
    display: flex;
    flex-direction: column;
    align-items: start;
    justify-content: start;
    background: var(--white);
    border-radius: 10px;
    transition: background-color 0.5s ease, transform 0.3s ease;

}

.corporate-help-page__logo-scroller .scroller-item img {
    width: 280px;
    height: 178px;
    object-fit: contain;
    margin: 5px;
}

.corporate-help-page__logo-scroller .company-name {
    padding: 0 26px;
    font-size: 22px;
    font-weight: 700;
}

.corporate-help-page__logo-scroller .company-description {
    padding: 0 26px;
    font-size: 16px;
    color: var(--grey-900);
}

.corporate-help-page__logo-scroller .top-row .scroller-wrapper {
    animation: corporate-help__scrollLeft 30s linear infinite;
}

.corporate-help-page__logo-scroller .bottom-row .scroller-wrapper {
    animation: corporate-help__scrollRight 30s linear infinite;
}

@keyframes corporate-help__scrollLeft {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-50%);
    }
}

@keyframes corporate-help__scrollRight {
    0% {
        transform: translateX(-50%);
    }
    100% {
        transform: translateX(0);
    }
}