/* Раскладка для узкого экрана: одна колонка шириной 640 px. Используется дважды:
   в PDF для телефона (вместе с mobile_pdf.css) и на веб-странице (подключается при ширине экрана до 900 px).
   Текст и порядок страниц берутся из deck.html — второй копии содержания нет. */
.slide, .slide.light, .slide.cover {
  width: 640px; height: auto; overflow: visible; padding: 52px 36px 44px;
  background: #f4f4f4 url("assets/bg/topo-light.jpg") center top / auto 1138px; }
/* всё, что стояло по координатам листа, идёт сверху вниз */
.p2-text, .p2-stats, .p3-body, .p4-body, .p5-text, .p6-left, .p6-right, .p7-body, .p10-body, .cover-mission {
  position: static; width: auto; }
.lfoot, .cover-foot { display: none; }   /* номера листов здесь другие */

/* текст */
.k-red { font-size: 17px; letter-spacing: 4px; margin-bottom: 8px; }
.light h2, .light h2.one { font-size: 33px; line-height: 1.12; letter-spacing: .3px; white-space: normal; margin-top: 0; break-after: avoid; }
.light .lead, .p4 .lead, .ai .lead, .idea .lead, .local .lead, .team .lead { font-size: 23px; line-height: 1.42; max-width: none; margin-top: 16px; }
.light p, .light .card p, .ai .card p, .uae .card p, .local .cards3 .card p, .local-bms p, .team-grid .card p { font-size: 23px; line-height: 1.42; }
.who { margin-top: 16px; }

/* карточки и сетки — в одну колонку */
.cards3, .cards2, .uae .cards3, .ai .cards3, .idea .cards3, .local .cards3 { grid-template-columns: 1fr; gap: 14px !important; margin-top: 22px !important; }
.light .card, .cards3 .card, .uae .cards3 .card, .ai .cards3 .card, .team-grid .card { padding: 18px 20px 16px; min-height: 0; break-inside: avoid; }
.light .card h3, .uae .card h3, .ai .card h3, .local-bms h3, .team-grid .card h3 { font-size: 25px; margin-bottom: 8px; white-space: normal; }
.light .card .k { font-size: 14px; margin-bottom: 8px; }
.local-bms { padding: 20px 22px 18px !important; margin-top: 14px; }

/* цифры — по две в ряд */
.light .stats, .light .stats.c4, .light .stats.c2, .p6-left .stats, .race .p6-left .stats { grid-template-columns: 1fr 1fr; gap: 20px 22px; margin-top: 24px !important; }
.light .stat { break-inside: avoid; }
.light .stat .n { font-size: 40px !important; }
.light .stat .n.txt { font-size: 27px !important; }
.light .stat .l, .p6-left .stat .l { font-size: 18px; line-height: 1.32; }

/* наши работы, полный цикл, продукт */
.works { grid-template-columns: 1fr; gap: 26px; margin-top: 22px; }
.works figure, .p4-strip figure, .pcard, .p6-right figure, .team-photo { break-inside: avoid; }
.works figcaption { font-size: 20px; margin-top: 12px; }
.works .sub { font-size: 19px; }
.light .steps { grid-template-columns: 1fr 1fr; gap: 18px 22px; margin-top: 22px; }
.light .step { break-inside: avoid; }
.light .step h3 { font-size: 22px; }
.light .step p { font-size: 19px; }
.p4-strip { grid-template-columns: 1fr 1fr; gap: 18px 22px; margin-top: 24px; }
.p7-body .head { display: block; }
.p7-body .chips, .cards6 + .chips { gap: 8px; margin-top: 16px; }
.p7-body .chips .chip, .cards6 + .chips .chip { flex: 0 0 auto; padding: 6px 12px; font-size: 17px; white-space: normal; }
.cards6 { grid-template-columns: 1fr 1fr; gap: 14px 18px; margin-top: 20px; }
.pcard .pimg { height: 150px; }
.pcard figcaption { font-size: 15px; letter-spacing: 1px; }

/* каналы: карта сверху, карточки под ней */
.p9k { grid-template-columns: 1fr; gap: 16px; margin-top: 20px; }
.p9k-map { display: block; break-inside: avoid; }
.p9k-img i { width: 14px; height: 14px; border-width: 2px; }
.p9k-cards { gap: 14px; }
.p9k .card li { white-space: normal; font-size: 22px; }

/* гонки, предложение, команда */
.p6-right { grid-template-columns: 1fr 1fr; gap: 14px 16px; margin-top: 24px; }
.p6-right .wide .ph { height: 320px; }
.p6-right figure:not(.wide) .ph { height: 250px; }
.idea-row { grid-template-columns: 1fr; gap: 14px; margin-top: 16px; }
.idea-ph { height: 230px; break-inside: avoid; }
.team-cols { grid-template-columns: 1fr; gap: 20px; margin-top: 16px; }
.team-grid { grid-template-columns: 1fr; gap: 12px; margin-top: 18px; }
.team-grid .card.wide { grid-column: auto; }
.team-photo .ph { height: auto; aspect-ratio: 2924 / 2067; }

/* обложка и контакты: фото во всю ширину сверху, флажок справа под ним */
.slide.cover { padding-top: 0; }
.cover-photo, .final .cover-photo { position: static; width: auto; height: 400px; margin: 0 -36px; }
.cover-flag { position: static; float: right; width: 210px; margin: 0 -22px 0 8px; }
.cover-mission { padding-top: 26px; }
.cover-mission .cols, .final .mission-strong { clear: both; padding-top: 8px; }   /* текст начинается под флажком, а не обтекает его */
.cover-mission p { font-size: 23px; line-height: 1.42; }
.mission-strong { font-size: 27px; }
.final .mission-strong { font-size: 30px; }
.final-row { grid-template-columns: 1fr; gap: 18px; margin-top: 24px; }
.final-c .v { font-size: 36px; }
