/* ============================================================================
   Подвал, семья E: пять раскладок сверх зеркала (SCRUM-570, 09.10.2026).

   ЗАЧЕМ СВОЙ ФАЙЛ. `footer.css` - зеркало кита (`tools/adopt-footer.php`) и руками
   не правится; у кита этих раскладок нет. Числа сняты с образца и записаны в
   `docs/konkurent/podval-zamer.md` (плитки листа рисуются на 1440).

   Узость - контейнерные запросы к бумаге (`ls`), пороги проекта 700 и 1040.
   Только логические свойства. Цвет - только переменные подвала, которые печатает
   `sc_site_foot_vars()`; своих цветов файл не объявляет.
   ============================================================================ */

/* --- b1: подписи над адресом и контактами (как у образца, раскладка 6) ------- */

.ls-set-labeled {
  display: flex;
  flex-direction: column;
  align-items: var(--ls-foot-items, flex-start);
  row-gap: 8px;
}

/* --- e1: фраза и почта -------------------------------------------------------- */

.ls-set-e1 {
  --ls-foot-pad: clamp(80px, 6.67cqi, 96px);
  --ls-foot-gap: 64px;
  --ls-foot-cols: 1fr;
  --ls-foot-legal-cols: 1fr;
  --ls-foot-legal-justify: flex-start;
}

.ls-set-e1 .ls-set-row { row-gap: 24px; }
.ls-set-e1 .ls-set-stack { row-gap: clamp(24px, 2.2cqi, 32px); }

.ls-set-phrase,
.ls-set-mail {
  margin: 0;
  font-size: 25px;
  line-height: 1.25;
  font-style: italic;
  text-wrap: balance;
  overflow-wrap: anywhere;
}

.ls-set-phrase { max-inline-size: 24ch; }

.ls-set-mail {
  align-self: flex-start;
  padding-block-end: 8px;
  border-block-end: 1px solid currentColor;
  text-decoration: none;
}

.ls-set-mail:hover { text-decoration: none; border-block-end-width: 2px; }

.ls-set-socw {
  display: flex;
  flex-direction: column;
  row-gap: 16px;
}

.ls-set-socw-list {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.ls-set-word { font-size: 20px; line-height: 1.4; }

.ls-set-bottom {
  display: flex;
  flex-direction: column;
  row-gap: 24px;
}

@container ls (width > 700px) {
  .ls-set-e1 { --ls-foot-cols: minmax(0, 1fr) auto;
               --ls-foot-legal-cols: minmax(0, 1fr) auto;
               --ls-foot-legal-justify: flex-end; }
  .ls-set-e1 .ls-set-row { column-gap: 32px; align-items: start; }
  .ls-set-e1 .ls-set-bottom { row-gap: 16px; }
}

@container ls (width > 1040px) {
  .ls-set-e1 .ls-set-socw { row-gap: 12px; }
}

/* --- e2: группы ссылок в карточке --------------------------------------------- */

.ls-set-e2 {
  --ls-foot-pad: 16px;
  --ls-foot-mark: 25px;
  --ls-foot-group-cols: 1fr;
  --ls-foot-nav-cols: 1fr;
}

.ls-set-gcard {
  display: flex;
  flex-direction: column;
  background: var(--ls-foot-card-bg, transparent);
  border-radius: var(--ls-radius, 16px);
  overflow: hidden;
}

/* колонки во всю высоту ряда: разделители между ними не обрываются на коротком списке */
.ls-set-gcard .ls-set-groups { column-gap: 0; row-gap: 0; align-items: stretch; }

.ls-set-gcard .ls-set-group {
  row-gap: 20px;
  padding: 32px;
}

.ls-set-gcard .ls-set-group:not(:last-child) {
  border-block-end: 1px solid var(--ls-foot-line, currentColor);
}

.ls-set-gcard .ls-set-nav { row-gap: 8px; }

.ls-set-gfoot {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
  padding: 32px;
}

@container ls (width > 700px) {
  .ls-set-e2 { --ls-foot-group-cols: repeat(2, minmax(0, 1fr)); }
  .ls-set-gcard .ls-set-group { padding: 24px; }
  .ls-set-gcard .ls-set-group:nth-child(even) {
    border-inline-start: 1px solid var(--ls-foot-line, currentColor);
  }
  .ls-set-gfoot {
    flex-direction: row;
    align-items: flex-end;
    min-block-size: 200px;
    padding: 24px;
  }
}

@container ls (width > 1040px) {
  .ls-set-e2 { --ls-foot-group-cols: repeat(4, minmax(0, 1fr)); }
  .ls-set-gcard .ls-set-group:not(:last-child) { border-block-end: 0; }
  .ls-set-gcard .ls-set-group:not(:first-child) {
    border-inline-start: 1px solid var(--ls-foot-line, currentColor);
  }
}

/* --- e3: две половины, ссылки строками ---------------------------------------- */

.ls-set-e3 {
  --ls-foot-pad: 0px;
  --ls-foot-gap: 0px;
  --ls-foot-gap-tight: 8px;
  --ls-foot-mark: 25px;
  --ls-foot-legal-justify: flex-start;
}

.ls-set-halves {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  border-inline: 1px solid var(--ls-foot-line, currentColor);
}

.ls-set-half {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  row-gap: 48px;
  padding-block: clamp(32px, 2.8cqi, 40px);
  padding-inline: 24px;
}

.ls-set-half--list {
  justify-content: flex-start;
  row-gap: 0;
  padding-inline: 0;
  border-block-start: 1px solid var(--ls-foot-line, currentColor);
}

.ls-set-half-tail {
  display: flex;
  flex-direction: column;
  row-gap: 16px;
}

.ls-set-wordrow {
  display: flex;
  flex-wrap: wrap;
  column-gap: 16px;
}

.ls-set-wordrow .ls-set-word { font-size: var(--ls-foot-item, 16px); line-height: 1.5; }

.ls-set-rows {
  display: flex;
  flex-direction: column;
}

.ls-set-rowlink {
  display: flex;
  justify-content: space-between;
  column-gap: 16px;
  padding: 24px;
  font-size: 20px;
  line-height: 1.4;
  border-block-end: 1px solid var(--ls-foot-line, currentColor);
}

.ls-set-arrow {
  flex: none;
  inline-size: 24px;
  block-size: 24px;
}

/* стрелка смотрит вверх-вперёд: в RTL «вперёд» - влево */
[dir="rtl"] .ls-set-arrow { transform: scaleX(-1); } /* rtl-ok: зеркало значка по направлению письма */

.ls-set-e3 .ls-set-shot {
  aspect-ratio: auto;
  block-size: 165px;
  border-radius: 0;
}

@container ls (width > 1040px) {
  .ls-set-halves { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ls-set-half--list {
    border-block-start: 0;
    border-inline-start: 1px solid var(--ls-foot-line, currentColor);
  }
}

/* --- e4: меню сверху, крупное имя --------------------------------------------- */

.ls-set-e4 {
  --ls-foot-pad: clamp(32px, 2.8cqi, 40px);
  --ls-foot-gap: 24px;
  --ls-foot-justify: center;
  --ls-foot-align: center;
}

.ls-set-topnav {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  row-gap: 8px;
}

.ls-set-bigname {
  display: flex;
  justify-content: center;
  --ls-foot-mark: clamp(31.25px, 3.4cqi, 48.83px);
  --ls-foot-mark-lh: 1.11;
}

.ls-set-bigname .ls-set-mark { font-weight: 700; }

.ls-set-tri {
  display: flex;
  flex-direction: column;
  align-items: center;
  row-gap: 8px;
  padding-block-start: 8px;
}

.ls-set-tri-mid { text-align: center; }

@container ls (width > 700px) {
  .ls-set-e4 { --ls-foot-gap: 48px; }
  .ls-set-topnav {
    flex-direction: row;
    flex-wrap: wrap;
    column-gap: 32px;
    padding-block-start: 16px;
  }
  .ls-set-tri {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    justify-items: center;
    row-gap: 16px;
    padding-block: 24px;
  }
}

@container ls (width > 1040px) {
  .ls-set-tri {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    column-gap: 32px;
    justify-items: stretch;
    --ls-foot-align: start;
  }
  .ls-set-tri-mid { --ls-foot-align: center; }
  .ls-set-tri > .ls-set-soc { --ls-foot-justify: flex-end; }
}

/* --- e5: ссылки пилюлями, штриховка ------------------------------------------- */

.ls-set-e5 {
  --ls-foot-pad: clamp(32px, 2.8cqi, 40px);
  --ls-foot-gap: 32px;
  --ls-foot-mark: 25px;
}

/* полоса стоит у нижнего края подвала: нижнего поля под ней нет */
.ls-foot.ls-set-e5 { padding-block-end: env(safe-area-inset-bottom, 0px); }

.ls-set-pills {
  max-inline-size: 576px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  row-gap: 12px;
}

.ls-set-pill {
  /* 32 при образце 29: не меньше 24 по WCAG 2.2 и с запасом под палец */
  min-block-size: 32px;
  inline-size: fit-content;
  padding: 6px 15px;
  border: 1px solid color-mix(in oklab, currentColor 40%, transparent);
  border-radius: var(--ls-radius, 16px);
  font-size: 12.8px;
  line-height: 1.2;
  font-weight: 600;
  break-inside: avoid;
}

.ls-set-pill:hover {
  text-decoration: none;
  background: color-mix(in oklab, currentColor 10%, transparent);
}

.ls-set-pills-bar {
  position: relative;
  margin-inline: calc(-1 * var(--ls-page-gut, 24px));
  border-block-start: 1px solid var(--ls-foot-line, currentColor);
}

.ls-set-hatch {
  position: absolute;
  inset: 0;
  inline-size: 100%;
  block-size: 100%;
  opacity: 0.2;
  pointer-events: none;
}

.ls-set-pills-bar-in {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  row-gap: 32px;
  max-inline-size: var(--ls-foot-max, 1536px);
  margin-inline: auto;
  padding-block: 24px;
  padding-inline: var(--ls-page-gut, 24px);
}

/* знак наверху - только на узкой ширине; на широкой он стоит в полосе */
.ls-set-pills-mark { display: none; }

@container ls (width > 700px) {
  .ls-set-pills-top { display: none; }
  .ls-set-pills {
    display: block;
    columns: 2;
    column-gap: 40px;
  }
  .ls-set-pill { display: flex; margin-block-end: 8px; }
  .ls-set-pills-bar-in {
    flex-direction: row;
    align-items: flex-end;
    justify-content: space-between;
    padding-block: 32px;
  }
  .ls-set-pills-mark { display: block; }
}

@container ls (width > 1536px) {
  .ls-set-pills-bar { margin-inline: calc(50% - 50cqw); }
}

/* ============================================================================
   СТРОКА ПРАВ И НИЖНИЕ ССЫЛКИ - В ОДНУ ЛИНИЮ (решение владельца 12.10.2026: «почему тут не на
   одной линии?»). Замер 14 раскладок на 1280: в два яруса стояли только D1, D2 и E3, - им та
   же сетка, что у A1 и семьи B: права слева, ссылки справа. «Everything centred» (A2)
   остаётся в два яруса по решению владельца: там всё по центру. На телефоне - друг под
   другом у всех, как и было.
   ============================================================================ */
/* ДЛИННОЕ СЛОВО ПЕРЕНОСИТСЯ, А НЕ РАСПИРАЕТ ПОДВАЛ (замер владельца 12.10.2026 на Polish and Co,
   ширина 390): описание из одного слова в 44 буквы держало колонку D1 шириной 386 при месте 350, и
   подвал вылезал за бумагу на 16 точек. Адрес почты или ссылка без пробелов дают то же самое. */
.ls-foot .ls-set-about,
.ls-foot .ls-set-rights,
.ls-foot .ls-set-phrase,
.ls-foot .ls-set-hit { overflow-wrap: anywhere; }

@container ls (width > 700px) {
  .ls-set-d1 .ls-set-legal,
  .ls-set-d2 .ls-set-legal,
  .ls-set-e3 .ls-set-legal { --ls-foot-legal-cols: minmax(0, 1fr) auto; }
}

/* ============================================================================
   ФОТО ПОДВАЛА ПРАВИТСЯ КАК ЛЮБОЕ (12.10.2026). Снимок печатает общий печатник
   (`sc_site_v2_photo()`), и картинка лежит в его обёртке, а не прямым ребёнком коробки -
   поэтому скругление держит сама коробка (`overflow:hidden`), а обёртка тянется на всю её
   высоту. Пустая коробка бывает только в редакторе: пунктир и подпись говорят, что сюда
   ставится фото, - посетителю она не печатается вовсе.
   ============================================================================ */
.ls-set-shot { overflow: hidden; position: relative; }
.ls-set-shot > * { display: block; block-size: 100%; }
.ls-set-shot[data-empty] {
  background: transparent;
  outline: 2px dashed color-mix(in srgb, currentColor 35%, transparent);
  outline-offset: -2px;
}
.ls-set-shot[data-empty]::after {
  content: "Add a photo";
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  font-size: 14px;
  opacity: .7;
  pointer-events: none;
}
