/* Фаза 3. Новые страницы «Гарантии», «Собственникам», «Дилерам» (Figma 956:42447, 759:39488, 759:40019;
   мобильные 959:40685, 957:40315, 954:43201). Десктоп — контейнер 1160, мобильная — дизайн 320. */
.p3_hero, .p3_section { margin: 0; } /* у section на сайте margin-bottom: 80px — разделы новых страниц идут вплотную, как в макете */
.p3_section { padding: 80px 0; background: #fff; }
.p3_section--gray { background: #F6F7F8; }
.p3_section--beige { background: #EBE5D2; }
.p3_section--gray + .p3_section--gray { padding-top: 0; }
.p3_head { margin-bottom: 40px; }
.p3_head h2 { margin: 0; font-family: 'Actay Wide'; font-weight: bold; font-size: 32px; line-height: 36px; color: #2F2F2F; }
.p3_lead { margin: 12px 0 0; max-width: 1000px; font-size: 18px; line-height: 20px; color: #808080; }
.p3_section--beige .p3_lead { color: rgba(47, 47, 47, .8); }
.p3_note { margin: 12px 0 0; max-width: 1000px; font-family: 'Gilroy'; font-weight: 300; font-size: 14px; line-height: 16px; color: #808080; }
.p3_subhead { margin: 0 0 24px; font-family: 'Actay Wide'; font-weight: bold; font-size: 22px; line-height: 26px; color: #2F2F2F; }

/* Список с жёлтыми галочками */
.p3_checklist { display: grid; gap: 16px 24px; margin: 0; padding: 0; list-style: none; }
.p3_checklist--2 { grid-template-columns: repeat(2, 1fr); }
.p3_checklist--3 { grid-template-columns: repeat(3, 1fr); gap: 16px 40px; }
.p3_checklist li { position: relative; display: flex; align-items: center; min-height: 24px; padding-left: 36px; font-size: 18px; line-height: 20px; color: #2F2F2F; }
.p3_checklist li::before { content: ''; position: absolute; left: 0; top: 50%; width: 24px; height: 24px; margin-top: -12px; border-radius: 50%; background: #FFDD2D url(../images/p3/check-circle.svg) no-repeat center / 12px 12px; }

/* Карточки: цвет от фона раздела */
.p3_cards { display: grid; gap: 24px; }
.p3_cards--cols3 { grid-template-columns: repeat(3, 1fr); }
.p3_cards--cols4 { grid-template-columns: repeat(4, 1fr); gap: 20px; }
.p3_cards--cols3-2 { grid-template-columns: repeat(6, 1fr); }
.p3_cards--cols3-2 .p3_card { grid-column: span 2; }
.p3_cards--cols3-2 .p3_card:nth-child(n+4) { grid-column: span 3; }
.p3_card { display: flex; flex-direction: column; gap: 12px; box-sizing: border-box; padding: 24px; border-radius: 16px; background: #F6F7F8; }
.p3_section--gray .p3_card { background: #fff; }
.p3_card h3 { margin: 0; font-family: 'Actay Wide'; font-weight: bold; font-size: 18px; line-height: 24px; color: #2F2F2F; }
.p3_card p { margin: 0; font-family: 'Gilroy'; font-weight: 300; font-size: 14px; line-height: 16px; color: #808080; }
.p3_card_icon { display: block; width: 24px; height: 24px; }
.p3_cards--big .p3_card { justify-content: flex-end; gap: 16px; min-height: 286px; padding: 32px; border-radius: 24px; }
.p3_cards--big .p3_card_icon { width: 32px; height: 32px; }
.p3_cards--big h3 { font-size: 22px; line-height: 26px; }
.p3_cards--big p { font-weight: 400; font-size: 18px; line-height: 20px; }
.p3_cards--feature { gap: 20px; }
.p3_cards--feature .p3_card { min-height: 160px; }
.p3_cards--box .p3_card_iconbox { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 12px; }
.p3_cards--box .p3_card_icon, .p3_cards--inline .p3_card_icon { width: 20px; height: 20px; }
.p3_cards--inline { gap: 20px; }
.p3_cards--inline .p3_card { min-height: 160px; }
.p3_card_head { display: flex; align-items: center; gap: 12px; }

/* Шаги 01…0N */
.p3_steps { display: grid; gap: 20px; margin: 0; padding: 0; list-style: none; }
.p3_steps--5 { grid-template-columns: repeat(5, 1fr); }
.p3_steps--6 { grid-template-columns: repeat(3, 1fr); }
.p3_step { display: flex; flex-direction: column; gap: 16px; box-sizing: border-box; min-height: 220px; padding: 20px; border-radius: 16px; background: #F6F7F8; }
.p3_steps--6 .p3_step { min-height: 180px; }
.p3_step_num { font-family: 'Unbounded', 'Actay Wide', sans-serif; font-weight: 700; font-size: 30px; line-height: 32px; color: #FFDD2D; }
.p3_step_body { display: flex; flex-direction: column; gap: 8px; }
.p3_step h3 { margin: 0; font-family: 'Actay Wide'; font-weight: bold; font-size: 18px; line-height: 24px; color: #2F2F2F; }
.p3_step p { margin: 0; font-family: 'Gilroy'; font-weight: 300; font-size: 14px; line-height: 16px; color: #808080; }

/* Первый экран с формой */
.p3_hero { background: #EBE5D2; overflow: hidden; } /* на мобильном картинка шире экрана — обрезаем, как в макете */
.p3_hero_inner { position: relative; display: flex; justify-content: space-between; align-items: flex-start; min-height: 434px; box-sizing: border-box; }
.p3_hero_info { position: relative; z-index: 1; width: 600px; }
.p3_hero .breadcrumbs { line-height: 16px; }
.p3_hero h1 { margin: 0 0 26px; font-family: 'Actay Wide'; font-weight: bold; font-size: 40px; line-height: 44px; color: #2F2F2F; }
.p3_hero_text { max-width: 455px; margin: 0 0 62px; font-size: 18px; line-height: 20px; color: #2F2F2F; }
.p3_hero_button { width: 220px; height: 48px; padding: 0 24px; border-radius: 8px; font-family: 'Gilroy Bold'; font-weight: bold; font-size: 16px; line-height: 22px; color: #2F2F2F; }
.p3_hero_img { position: absolute; left: 283px; bottom: 0; width: 468px; height: 272px; object-fit: cover; object-position: center bottom; pointer-events: none; }
.p3_form { position: relative; z-index: 2; display: flex; flex-direction: column; gap: 12px; box-sizing: border-box; width: 500px; margin-top: 24px; padding: 32px; border: 1px solid #E4E4E4; border-radius: 24px; background: #fff; }
.p3_form_title { margin-bottom: 4px; font-family: 'Actay Wide'; font-weight: bold; font-size: 22px; line-height: 26px; color: #2F2F2F; }
.p3_form_row { display: flex; gap: 12px; }
.p3_form_row input[type="text"], .p3_form_row input[type="email"] { flex: 1 1 0%; min-width: 0; } /* .orderform input[type=text] в style.css задаёт flex только телефону */
.p3_form input[type="text"], .p3_form input[type="email"], .p3_form textarea { display: block; box-sizing: border-box; width: 100%; height: 42px; padding: 12px; border: 1px solid #E4E4E4; border-radius: 8px; background: #fff; color: #2F2F2F; font-family: 'Gilroy'; font-weight: 300; font-size: 14px; line-height: 16px; }
.p3_form textarea { height: 70px; resize: vertical; }
.p3_form input::placeholder, .p3_form textarea::placeholder { color: #808080; opacity: 1; }
.p3_form .p3_agree { display: flex; align-items: center; overflow: visible; margin: 4px 0 0; padding: 0 0 0 32px; min-height: 20px; font-family: 'Gilroy'; font-weight: 300; font-size: 12px; line-height: 14px; color: #808080; }
.p3_form .p3_agree span { top: 50%; margin-top: -10px; } /* .f_check обрезает (overflow: hidden) — квадрат по центру строки, без обрезки */
.p3_form .p3_agree span:after { border: 1px solid #2F2F2F; }
.p3_form_submit { width: 100%; height: 46px; margin-top: 12px; border: 0; border-radius: 8px; background: #FFDD2D; color: #2F2F2F; font-family: 'Gilroy Bold'; font-weight: bold; font-size: 16px; line-height: 22px; }

/* «Гарантии»: текст страницы из редактора */
.p3_page { padding-bottom: 0; }
.p3_faq { padding-top: 80px; } /* в макете заголовок вопросов на 80 ниже предыдущего раздела */
.p3_page h1 { margin: 0 0 24px; font-family: 'Actay Wide'; font-weight: bold; font-size: 40px; line-height: 44px; color: #2F2F2F; }
.g_text { font-size: 18px; line-height: 20px; color: #2F2F2F; }
.g_text p { margin: 0 0 12px; }
.g_text .g_intro { margin-bottom: 40px; }
.g_text .g_h { display: flex; align-items: center; gap: 12px; margin: 40px 0 16px; font-family: 'Actay Wide'; font-weight: bold; font-size: 32px; line-height: 36px; }
.g_text .g_h::before { content: ''; flex: none; width: 24px; height: 24px; background-repeat: no-repeat; background-position: center; background-size: contain; }
.g_h--shield::before { background-image: url(../images/p3/shield.svg); }
.g_h--doc::before { background-image: url(../images/p3/doc.svg); }
.g_h--building::before { background-image: url(../images/p3/building.svg); }
.g_h--handshake::before { background-image: url(../images/p3/handshake.svg); }
.g_h--chat::before { background-image: url(../images/p3/chat.svg); }
.g_h--star::before { background-image: url(../images/p3/star.svg); }
.g_h--search::before { background-image: url(../images/p3/search.svg); }
.g_text .g_list { margin: 0 0 12px; padding: 0; list-style: none; }
.g_text .g_list li { position: relative; margin-bottom: 4px; padding-left: 24px; }
.g_text .g_list li::before { content: '✓'; position: absolute; left: 0; top: 0; }

/* «Дилерам»: баннер прайс-листа вплотную к соседним разделам (Figma 754:53110) */
.p3_price { margin: 0; }
/* «Дилерам»: оплата — текст слева, фото справа (Figma 759:40272) */
.p3_payment { display: flex; align-items: center; gap: 32px; }
.p3_payment_text { flex: 1; min-width: 0; }
.p3_payment_text .p3_head { margin-bottom: 32px; }
.p3_payment_text .p3_checklist { margin-bottom: 32px; }
.p3_payment_text .p3_note { margin: 0; }
.p3_payment_img { flex: none; width: 520px; height: 347px; object-fit: cover; border-radius: 20px; }

@media (max-width: 767px) {
	.p3_section { padding: 64px 0 0; }
	.p3_section--gray, .p3_section--beige { margin-top: 64px; padding: 64px 0; }
	.p3_section--gray + .p3_section--gray { margin-top: 0; padding-top: 0; }
	.p3_head { margin-bottom: 24px; }
	.p3_head h2 { font-size: 20px; line-height: 26px; }
	.p3_lead { margin-top: 16px; font-size: 16px; line-height: 20px; }
	.p3_subhead { margin-bottom: 16px; font-family: 'Gilroy'; font-weight: 400; font-size: 16px; line-height: 20px; }
	.p3_checklist, .p3_checklist--2, .p3_checklist--3 { grid-template-columns: 1fr; gap: 12px; }
	.p3_checklist li { font-size: 16px; line-height: 20px; }
	.p3_cards, .p3_cards--cols3, .p3_cards--cols4, .p3_cards--cols3-2 { grid-template-columns: 1fr; gap: 12px; }
	.p3_cards--cols3-2 .p3_card, .p3_cards--cols3-2 .p3_card:nth-child(n+4) { grid-column: auto; }
	.p3_card { padding: 16px; min-height: 0; }
	.p3_card h3 { font-size: 14px; line-height: 18px; }
	.p3_cards--feature .p3_card, .p3_cards--inline .p3_card { min-height: 0; }
	.p3_cards--big .p3_card { min-height: 0; padding: 20px; border-radius: 16px; gap: 12px; }
	.p3_cards--big h3, .p3_cards--big p { font-size: 16px; line-height: 20px; }
	.p3_steps, .p3_steps--5, .p3_steps--6 { grid-template-columns: 1fr; gap: 8px; }
	.p3_step, .p3_steps--6 .p3_step { min-height: 0; padding: 16px; gap: 12px; }
	.p3_step_num { font-size: 22px; line-height: 28px; }
	.p3_step h3 { font-size: 14px; line-height: 18px; }
	.p3_hero_inner { display: block; min-height: 0; padding-bottom: 210px; } /* картинка 254, заходит под форму на 44 (Figma 961:43816) */
	.p3_hero_info { width: auto; }
	.p3_hero h1 { margin-bottom: 8px; font-size: 22px; line-height: 28px; }
	.p3_hero_text { margin-bottom: 24px; font-size: 16px; line-height: 20px; }
	.p3_hero_button { width: 100%; }
	.p3_form { width: auto; margin-top: 40px; padding: 16px; border-radius: 16px; gap: 8px; } /* Figma 957:40371 */
	.p3_form_title { font-size: 16px; line-height: 20px; }
	.p3_form_row { flex-direction: column; gap: 8px; }
	.p3_form input[type="text"], .p3_form input[type="email"] { height: 40px; }
	.p3_form textarea { height: 60px; }
	.p3_hero_img { left: 50%; width: 434px; height: 254px; margin-left: -217px; }
	.p3_faq { padding-top: 64px; }
	.p3_page h1 { margin-bottom: 16px; font-size: 22px; line-height: 28px; }
	.g_text { font-size: 16px; line-height: 20px; }
	.g_text .g_intro { margin-bottom: 32px; }
	.g_text .g_h { flex-direction: column; align-items: flex-start; gap: 10px; margin: 32px 0 16px; font-size: 20px; line-height: 26px; }
	.g_text .g_list li { margin-bottom: 8px; }
	.p3_payment { flex-direction: column; align-items: stretch; gap: 24px; }
	.p3_payment_text .p3_head, .p3_payment_text .p3_checklist { margin-bottom: 24px; }
	.p3_payment_img { width: 100%; height: 200px; border-radius: 18px; }
}
