/* Доработки шаблона remont-pricelov.ru под сайты ремонта Kandao */
:root { --y: #ffc93e; --y-soft: #fff6dc; --ink: #2b2b2b; }

/* H1 первого экрана — компактный: длинные названия моделей укладываются в 2 строки на ПК и 2–3 на телефоне */
.main_page .content .h1, .main_page .content h1 { font-size: clamp(26px, 2.4vw, 38px); line-height: 1.18; max-width: 680px; margin-bottom: 36px; overflow-wrap: anywhere; hyphens: auto; }
@media (max-width: 900px) { .main_page .content .h1, .main_page .content h1 { font-size: 26px; line-height: 1.2; margin-bottom: 22px; } }
@media (max-width: 480px) { .main_page .content .h1, .main_page .content h1 { font-size: 21px; } }
/* Кнопка «Меню» и верхние пункты — в рамке */
.nav__item--top > .nav__toggle { border: 2px solid var(--y); border-radius: 22px; padding: 6px 14px; background: #fff; }
.nav__item--top.open > .nav__toggle, .nav__item--top > .nav__toggle:hover { background: var(--y-soft); }

/* Акция: 24–30 слов в рамках, без прокрутки */
.akcii_content.akcii_content--fit { height: auto; overflow: visible; }
.akcii_content--fit .-info { gap: 8px; }
.akcii_content--fit .-info a { display: flex; align-items: center; justify-content: center; text-align: center; border: 1.5px solid var(--y); border-radius: 16px; padding: 6px 8px; text-decoration: none; font-size: 14px; line-height: 1.2; color: #333; background: #fff; min-height: 34px; box-sizing: border-box; transition: background .15s; }
.akcii_content--fit .-info a:hover { background: var(--y-soft); }
@media (max-width: 767px) { .akcii_content--fit .-info { grid-template-columns: repeat(2, 1fr); } }

/* Карточки каталога: цена «от», карточка без цены */
.filter_content_elem .-price.-noprice b { display: none; }
.filter_content_elem .-price.-noprice div { font-weight: 700; }
.filter_content_elem .-econom div { font-size: 14px; color: #555; }

/* Цены */
.ceny_wrap { margin-bottom: 80px; }
.ceny_note { margin-top: 18px; color: #666; font-size: 14px; text-align: center; }

/* Вакансии — стандартная жёлтая рамка */
.vakansii_message { border: 2px solid var(--y); border-radius: 20px; }

/* Текст страницы */
.textbox__body h2 { font-size: 22px; line-height: 1.3; margin-top: 26px; }
.textbox__body ul, .textbox__body ol { padding-left: 22px; }
.textbox__body li + li { margin-top: 6px; }
.textbox__body a { text-decoration: underline; text-decoration-color: var(--y); text-underline-offset: 3px; }

/* FAQ */
.faq_wrap { margin-bottom: 100px; }

/* Отзывы (только реальные — из config.json → reviews) */
.reviews { gap: 20px; }
.review_card { border: 1px solid #e6e6e6; border-radius: 14px; padding: 18px 20px; background: #fff; box-shadow: 0 4px 14px rgba(0,0,0,.04); }
.review_card__head { display: flex; gap: 12px; align-items: center; margin-bottom: 6px; }
.review_card__head b { display: block; font-size: 15px; }
.review_card__ava { width: 38px; height: 38px; border-radius: 50%; background: var(--y-soft); display: inline-flex; align-items: center; justify-content: center; font-weight: 700; color: #6b5a1e; flex: 0 0 38px; }
.review_card__meta { font-size: 12px; color: #888; }
.review_card__stars { color: #f5b301; letter-spacing: 2px; margin-bottom: 6px; }
.review_card p { margin: 0; line-height: 1.5; font-size: 14px; }

/* Футер, контакты */
.footer_elem_contacts a, .kontakty_elem a { color: inherit; text-decoration: none; }

/* v4 */
/* Поиск по странице: кнопка с лупой ровно в границах поля */
.search { display: inline-flex; align-items: stretch; height: 30px; line-height: 30px; vertical-align: middle; }
.search input { display: block; height: 30px; margin: 0; padding-right: 38px; border-radius: 8px; }
.search .search_btn { top: 0; bottom: 0; right: 0; height: 30px; border-radius: 0 8px 8px 0; }
/* Акция на телефоне: слова плотными «таблетками» без картинки — весь блок помещается в экран */
@media (max-width: 767px) {
  .akcii > .-img { display: none; }
  .akcii .h2 { font-size: 22px; line-height: 1.2; margin-bottom: 8px; }
  .akcii .-text .-sub_title { font-size: 14px; line-height: 1.35; margin-bottom: 14px; }
  .akcii_content--fit .-info { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px; }
  .akcii_content--fit .-info a { flex: 0 0 auto; min-height: 30px; padding: 4px 10px; font-size: 13px; border-radius: 15px; }
}

/* v5 */
/* Вакансии: все строки сообщения по центру, как телефон и почта */
.vakansii_message_content { text-align: center; }
.vakansii_message_content a { display: block; }
/* Контакты: телефон и почта не слипаются, при нехватке места — в две строки */
.kontakty_elem { flex-wrap: wrap; gap: 6px 28px; padding-left: 24px; padding-right: 24px; }
.kontakty_elem p { margin: 0; white-space: nowrap; }
