/* =====================================================================
   Balance — информационные страницы (О компании, Доставка, Политика,
   Контакты, FAQ)
   ===================================================================== */

.bal-info { padding-bottom: 48px; }
.bal-info__narrow { max-width: 900px; }
.bal-info__title { font-size: 32px; font-weight: 700; letter-spacing: -0.01em; margin: 48px 0 32px; }

.bal-info__body { color: var(--muted); line-height: 1.8; }
.bal-info__body--sm { font-size: 14px; line-height: 1.7; }
.bal-info__body p { margin-bottom: 20px; }
.bal-info__body strong { color: var(--text); }
.bal-info__body h2 { font-size: 20px; font-weight: 700; color: var(--text); margin: 32px 0 16px; }

.bal-info__section { margin-bottom: 32px; }
.bal-info__section h2 { font-size: 20px; font-weight: 700; margin-bottom: 16px; }
.bal-info__section p { color: var(--muted); line-height: 1.7; margin-bottom: 12px; }

.bal-info__list { list-style: disc; padding-left: 24px; margin: 0 0 16px; }
.bal-info__list li { margin-bottom: 8px; line-height: 1.6; }

.bal-info__cards { display: flex; flex-direction: column; gap: 16px; }
.bal-info__card { background: var(--bg-gray); border-radius: var(--radius-lg); padding: 20px; }
.bal-info__card h3 { font-weight: 700; margin-bottom: 8px; }
.bal-info__card p { margin-bottom: 6px; }

.bal-info__checks { display: flex; flex-direction: column; gap: 12px; font-size: 14px; color: var(--muted); }
.bal-info__check { display: flex; gap: 12px; }
.bal-info__check .bal-icon { color: var(--green); flex-shrink: 0; }
.bal-info__check strong { color: var(--text); }

.bal-info__callout { background: var(--green-bg); border-radius: var(--radius-lg); padding: 24px; margin-top: 32px; }
.bal-info__callout h3 { font-weight: 700; color: var(--text); margin-bottom: 12px; }
.bal-info__contacts { display: flex; flex-direction: column; gap: 8px; font-size: 14px; }
.bal-info__contacts strong { color: var(--text); }

/* ---------- Контакты ---------- */
.bal-contacts__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 32px; margin-bottom: 32px; }
.bal-contacts__row { display: flex; gap: 12px; align-items: flex-start; margin-bottom: 16px; }
.bal-contacts__row:last-child { margin-bottom: 0; }
.bal-contacts__row .bal-icon { color: var(--green); flex-shrink: 0; margin-top: 2px; }
.bal-contacts__big { font-size: 18px; font-weight: 700; }
.bal-contacts__strong { font-weight: 700; }
.bal-contacts__map-card { margin-bottom: 32px; }
.bal-contacts__map { background: #fff; border: 1px solid var(--border); border-radius: var(--radius); overflow: hidden; margin: 12px 0 16px; }
/* Встроенная карта (iframe): растягиваем на всю ширину, переопределяя её width/height
   (заданы атрибутами width="600" height="450" — !important перебивает и атрибут, и инлайн-стиль). */
.bal-contacts__map iframe { display: block; width: 100% !important; height: auto !important; aspect-ratio: 16 / 9; border: 0; }
.bal-contacts__map-inner { aspect-ratio: 16/9; background: linear-gradient(135deg, #EAF5E2, #F8F8F8); display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; text-align: center; color: var(--muted); }
.bal-contacts__map-inner .bal-icon { opacity: .3; }
.bal-contacts__socials h3 { font-weight: 700; margin-bottom: 16px; }
.bal-contacts__social-row { display: flex; gap: 12px; }
.bal-contacts__social-row a { width: 48px; height: 48px; border: 2px solid var(--border); border-radius: var(--radius-lg); display: flex; align-items: center; justify-content: center; transition: border-color .15s, color .15s; }
.bal-contacts__social-row a:hover { border-color: var(--green); color: var(--green); }

/* ---------- FAQ ---------- */
.bal-faq__intro { margin-bottom: 32px; margin-top: -16px; }
.bal-faq__list { display: flex; flex-direction: column; gap: 12px; }
.bal-faq__item { border: 1px solid var(--border); border-radius: var(--radius-lg); overflow: hidden; }
.bal-faq__q { width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 20px; background: #fff; border: 0; text-align: left; font-weight: 700; font-size: 15px; transition: background-color .15s; }
.bal-faq__q:hover { background: var(--bg-gray); }
.bal-faq__chev { color: var(--muted); flex-shrink: 0; transition: transform .2s; }
.bal-faq__item.is-open .bal-faq__chev { transform: rotate(90deg); }
.bal-faq__a { display: none; padding: 0 20px 20px; font-size: 14px; color: var(--muted); line-height: 1.7; }
.bal-faq__item.is-open .bal-faq__a { display: block; }
.bal-faq__cta { margin-top: 48px; background: var(--green-bg); border-radius: var(--radius-lg); padding: 24px; text-align: center; }
.bal-faq__cta h3 { font-weight: 700; margin-bottom: 8px; }
.bal-faq__cta p { margin-bottom: 16px; }
.bal-faq__cta-btns { display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; }

@media (max-width: 640px) {
	.bal-contacts__grid { grid-template-columns: 1fr; }
	.bal-info__title { font-size: 26px; }
}
