/* --- Глобально: безопасный box-sizing --- */
html, body {
    box-sizing: border-box;
}
*, *::before, *::after {
    box-sizing: inherit;
}

/* 0. Лучше сначала найти и исправить причину, но если временно надо — оставляем */
/* Удалите это после фикса виновника горизонтальной прокрутки */
body {
    /* overflow-x: hidden;  /* не рекомендуется как постоянное решение */ */
}

/* 1. Блоки Тильды — на полную ширину */
.t-records,
.t-record {
    width: 100%;
    max-width: 100%;
}

/* 2. Базовый контейнер и секции — резиновые с отступами */
.t-container,
.t-container_100,
.t-section,
.t-section__container,
.t-section__topwrapper,
.t-section__content,
.t-section__wrapper {
    width: 100%;
    max-width: 100%;
    padding-left: 20px;
    padding-right: 20px;
    box-sizing: border-box;
    margin-left: 0;
    margin-right: 0;
}

/* На больших экранах даём больше воздуха по краям */
@media (min-width: 1200px) {
    .t-container,
    .t-container_100,
    .t-section,
    .t-section__container,
    .t-section__topwrapper,
    .t-section__content,
    .t-section__wrapper {
        padding-left: 40px;
        padding-right: 40px;
    }
}

/* 3. НЕ трогаем .t-col и .t-row — пусть сетка живёт своей жизнью */

/* 4. Медиа — адаптивные, но без форсированного width:100% */
.t-container img,
.t-container video,
.t-container iframe,
.t-section__content img,
.t-section__content video,
.t-section__content iframe {
    max-width: 100%;
    height: auto;
    display: block;
    box-sizing: border-box;
    /* safe fallback for SVG or inline images */
    min-width: 0;
}

/* 5. Обложки — во всю ширину */
.t-cover,
.t-cover__carrier,
.t-cover__wrapper {
    width: 100%;
    max-width: 100%;
}

/* 6. Галереи и слайдеры — тянем по ширине */
.t-slds,
.t-slds__container,
.t-slds__item,
.t-slds__wrapper {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}

/* 7. Формы */
.t-form__inputsbox {
    width: 100%;
    max-width: 100%;
}

@media (min-width: 1200px) {
    .t-form__inputsbox {
        max-width: 700px;
        margin-left: 0;
    }
}

/* 8. Тексты — ограничиваем, чтобы не было простыни */
@media (min-width: 1200px) {
    .t-text,
    .t-descr {
        max-width: 900px;
    }
}

/* Доп. защита: предотвращаем "выпирание" flex-children */
.t-row, .t-col, .t-section__content {
    min-width: 0; /* важно для предотвращения переполнения flex-элементов с длинным контентом */
}
