/* Стили внутренних страниц услуг — надстройка над styles.css (та же палитра/типографика) */

.inner-page .header { position: sticky; top: 0; background: #fff; }

.page-hero { background: linear-gradient(135deg, #0b1c33 0%, #123056 60%, #0066FF 130%); color: #fff; padding: 48px 0 56px; }

/* Ширину задаёт универсальный .container (styles.css) — без локальных исключений */
.page-hero__title { color: #fff; margin: 10px 0 14px; }
.page-hero__lead { font-size: 18px; line-height: 1.6; opacity: .95; }
.page-hero__lead a { color: #9cc4ff; }
.page-hero__actions { margin-top: 22px; display: flex; gap: 12px; flex-wrap: wrap; }
.page-hero .btn--outline { border-color: rgba(255,255,255,.6); color: #fff; }

.breadcrumbs { font-size: 13px; opacity: .85; display: flex; gap: 8px; flex-wrap: wrap; }
.breadcrumbs a { color: #cfe0ff; text-decoration: none; }
.breadcrumbs a:hover { text-decoration: underline; }
.breadcrumbs span[aria-current] { color: #fff; }

.page-content { padding-top: 34px; padding-bottom: 64px; }
.page-content > p { font-size: 16.5px; line-height: 1.65; margin: 14px 0; color: #2a2f34; }
.page-content .heading2 { margin: 44px 0 6px; }
.page-h3 { font-size: 19px; margin: 26px 0 6px; color: #14181c; }

.page-list { margin: 12px 0 12px 4px; padding-left: 22px; }
.page-list li { margin: 7px 0; line-height: 1.6; }

.table-wrap { overflow-x: auto; margin: 18px 0; }
.page-table { border-collapse: collapse; width: 100%; font-size: 15px; background: #fff; }
.page-table th { background: #f2f5f9; text-align: left; padding: 10px 14px; border: 1px solid #e2e7ee; font-weight: 700; }
.page-table td { padding: 10px 14px; border: 1px solid #e2e7ee; vertical-align: top; line-height: 1.5; }
.page-table tr:nth-child(even) td { background: #fafbfd; }

.page-figure { margin: 22px 0; }
.page-figure img { width: 100%; height: auto; border-radius: 12px; display: block; }
.page-figure--info img { border: 1px solid #e2e7ee; background: #fff; }
.page-figure figcaption { font-size: 13px; color: #666d73; margin-top: 8px; }

mark.tbd { background: #fff3bf; color: #7a5a00; padding: 0 6px; border-radius: 4px; font-size: .92em; }

.page-content .cta-horizontal { margin: 30px 0; }
.page-content .faq-list { margin-top: 10px; }

/* Каталог услуг */
.catalog-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 18px; margin: 26px 0 40px; }
.catalog-card { border: 1px solid #e2e7ee; border-radius: 14px; padding: 22px; background: #fff; }
.catalog-card__title { font-size: 21px; margin: 0 0 8px; }
.catalog-card__title a { color: #14181c; text-decoration: none; }
.catalog-card__title a:hover { color: #0066FF; }
.catalog-card__kids { font-size: 13.5px; line-height: 1.7; color: #666d73; }
.catalog-card__kids a { color: #0066FF; text-decoration: none; }

/* Футер: silo-колонки */
.footer__grid--silo { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 22px; }
.footer__grid--silo h4 a { color: inherit; text-decoration: none; }

@media (max-width: 700px) {
  .page-hero { padding: 34px 0 40px; }
  .page-content { padding-top: 22px; }
}

/* v5: мобильные hero-CTA — кнопки в столбик, текст в одну строку */
@media (max-width: 560px) {
  .page-hero__actions { display: flex; flex-direction: column; align-items: stretch; gap: 10px; }
  .page-hero__actions .btn { width: 100%; font-size: 14px; padding-left: 10px; padding-right: 10px; }
}
