/* ============================================================
   FINAL POLISH — глобальная стрижка всего сайта
   1. Убираем все border-radius (кроме круглых элементов)
   2. Минимальные единые отступы между секциями
   3. Full-bleed для всех секций — нет «коробок» с боковыми полями
   ============================================================ */

:root {
    --side-gutter: 24px;       /* было 28 */
    --section-gap: 56px;       /* было 90+ */
}

/* ---------- 1. Никаких скруглений ---------- */
.btn_main, .order_from_btn, .nh_btn,
button.btn_main, a.btn_main, .btn_border,
.ph_hero__price_card, .ph_hero__tg_btn,
.header_float__inner, .header_float, .header_float__cta, .header_logo_block,
.pp_card, .pp_card_img, .pp_card_imgwrap, .pp_portfolio__nav,
.design_styles__card, .design_styles__card_imgwrap, .design_styles__card_count, .design_styles__card_style, .design_styles__btn, .design_styles__more,
.price__list > li, .price__list_img, .price__list_img img,
.calc_content, .calc_check, .calc_check__head, .calc_content__good,
.calc_prev, .calc_next,
.infortmation__item, .infortmation,
.zahvat, .in_style input, .zahvat .order_from_btn,
.uners_team__photo, .remont__col, .remont, .remont_steps,
.ph_solution__more, .ph_solution__team_photo, .ph_solution__more_btn,
.sostav_gallery__counter, .sostav_gallery__wrap,
.tg_robot__bubble,
.header_stories__inner, .header_stories,
.calc_intro, .calc_steps_simple,
.fb-popup-call, .zahvat_modal,
.remont__col_head, .nh_hero__btn,
.design_styles__filter,
.ph_hero__tg_btn span,
.footer, .footer__cont_title,
img, picture, video, iframe,
input, textarea, select, button {
    border-radius: 0 !important;
}

/* Круглыми остаются только: радио-индикаторы, аватары в Stories, кнопка-стрелка цены, робот, аура */
.calc_check__head > span:first-child,
.calc_check:has(input:checked) .calc_check__head > span:first-child,
.ph_hero__price_arrow,
.tg_robot, .tg_robot__halo, .tg_robot__shadow,
.header_story__ring, .header_story__face,
.ph_solution__step_num,
.sostav__accordion_title i,
.ph_hero__feature_ico,
.nh_hero__check {
    border-radius: 50% !important;
}
.ph_hero__feature_ico {
    border-radius: 50% !important;
}

/* ---------- 2. Минимальные одинаковые отступы между секциями ---------- */
.container_main, .container_main.plr {
    padding: 0 !important;
    margin: 0 !important;
}
.container_main .wmain {
    max-width: 100% !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* СБРОС старого правила из redesign.css которое навешивает margin-top 96px
   на все секции внутри .container_main .wmain (специфичность 0,0,3,0) */
.container_main .wmain > div,
.container_main .wmain > section,
.container_main > div,
.container_main > section {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

/* Каждая секция верстается одинаково: full-width фон + внутренний padding */
.pp_portfolio,
.calc.bg_light,
.price, .priceBlock, [id="priceBlock"],
.about_team, .sostav_new,
.remont, .remont_steps,
.uners_team, .inspiration,
.ph_solution,
.infortmation,
.zahvat, .faq, .etap {
    margin: 0 !important;
    padding-top: var(--section-gap) !important;
    padding-bottom: var(--section-gap) !important;
    padding-left: var(--side-gutter) !important;
    padding-right: var(--side-gutter) !important;
    box-sizing: border-box;
    max-width: 100% !important;
    width: 100% !important;
}

/* Прячем «дублирующую» кнопку расчёта — квиз имеет свою submit */
.calc_steps_cta { display: none !important; }

/* Внутри блоков убираем лишний margin сверху/снизу */
.calc_intro,
.calc_content,
.pp_portfolio__grid,
.price__list,
.sostav_showcase,
.ph_solution__top,
.ph_solution__bottom {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}
.calc_intro { margin-bottom: 24px !important; }
.calc_content { margin-top: 0 !important; }

/* etap (большая секция с 6 этапами дизайн-проекта) — подгоняем под общую гребёнку */
.etap__nav, .etap__slider__nav { margin-top: 24px !important; }
.etap__slider { margin-top: 24px !important; }

/* ============================================================
   REMONT --split: слева текст+CTA, справа 2 таблицы вертикально
   ============================================================ */
.remont.remont--split {
    display: grid !important;
    grid-template-columns: minmax(320px, 1fr) 1.4fr !important;
    gap: 60px !important;
    align-items: start !important;
    padding-top: 70px !important;
    padding-bottom: 70px !important;
}
.remont--split .remont__left {
    color: var(--ph-cream) !important;
    display: flex;
    flex-direction: column;
    gap: 18px;
}
.remont--split .remont__left .remont__label {
    color: rgba(245, 239, 230, 0.55) !important;
    margin: 0 !important;
}
.remont--split .remont__left .tm {
    font-family: 'Playfair Display', serif !important;
    font-size: clamp(28px, 2.6vw, 38px) !important;
    color: var(--ph-cream) !important;
    margin: 0 !important;
    line-height: 1.1 !important;
}
.remont--split .remont__left .tm em {
    font-style: italic !important;
    color: var(--ph-gold) !important;
    font-weight: 400 !important;
}
.remont--split .remont__sub {
    margin: 0 !important;
    font-size: 14px !important;
    line-height: 1.55 !important;
    color: rgba(245, 239, 230, 0.7) !important;
    font-weight: 300 !important;
}
.remont--split .remont__compare_title {
    margin: 12px 0 0 !important;
    font-family: 'Playfair Display', serif !important;
    font-size: 18px !important;
    font-weight: 400 !important;
    line-height: 1.3 !important;
    color: var(--ph-cream) !important;
    text-align: left !important;
}
.remont--split .remont__compare_title_em {
    color: var(--ph-gold) !important;
    font-style: italic !important;
}
.remont--split .remont__cta { margin-top: 16px !important; text-align: left !important; }
.remont--split .remont__cta .btn_main {
    background: var(--ph-cream) !important;
    color: var(--ph-text-dark) !important;
    border-color: var(--ph-cream) !important;
}
.remont--split .remont__cta .btn_main:hover {
    background: transparent !important;
    color: var(--ph-cream) !important;
}

/* Правая часть: 2 таблицы одна над другой, компактнее */
.remont--split .remont__table {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 14px !important;
    max-width: 100% !important;
}
.remont--split .remont__col {
    padding: 20px 22px !important;
}
.remont--split .remont__col_head {
    padding-bottom: 12px !important;
    margin-bottom: 12px !important;
    font-size: 14px !important;
    gap: 10px !important;
}
.remont--split .remont__col_ico {
    width: 26px !important;
    height: 26px !important;
}
.remont--split .remont__col_list li {
    padding: 8px 0 8px 20px !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
}
.remont--split .remont__col_list li::before {
    top: 16px !important;
    width: 6px !important;
    height: 6px !important;
}

@media (max-width: 980px) {
    .remont.remont--split {
        grid-template-columns: 1fr !important;
        gap: 32px !important;
    }
}

/* FAQ был отцентрирован и узкий — раскрываем */
.faq { max-width: 1100px !important; margin: 0 auto !important; }

/* ---------- 3. Внутри секций — без лишних боковых полей ---------- */
.calc_content { margin: 0 !important; }
.calc_intro { margin: 0 0 32px !important; }

/* Hero — без padding-bottom/top, занимает 100vh сам */
.ph_hero {
    padding: 0 !important;
    margin: 0 !important;
}

/* Footer */
.footer.plr {
    padding: 60px var(--side-gutter) 32px !important;
}

/* ---------- 4. Заголовки чуть меньше воздуха ---------- */
.tm, h2.tm {
    margin: 0 0 22px !important;
}

/* Hero — оставляем full-bleed, padding контент сам */
.ph_hero__content { padding-left: var(--side-gutter) !important; padding-right: var(--side-gutter) !important; }
.ph_hero__price_card { right: calc(var(--side-gutter) + 132px) !important; bottom: 24px !important; }

/* Header стянуть к новому side-gutter */
.header_float {
    left: var(--side-gutter) !important;
    right: var(--side-gutter) !important;
    width: calc(100% - var(--side-gutter) * 2) !important;
}

/* Mobile */
@media (max-width: 720px) {
    :root {
        --side-gutter: 14px;
        --section-gap: 40px;
    }
    .ph_hero__price_card {
        right: 14px !important;
        left: 14px !important;
        bottom: 14px !important;
    }
}
