/* ============================================================================
   КОМПОНЕНТ. МЕСТО СОБСТВЕННОГО ПРОЕКТА («витрина») — TASK-006, фаза 5.

   Точный порт принятого владельцем 12.08.2026 образца
   materials/design/образец-рекламное-место-2026-08-12.html (разбор
   materials/design/реклама-разбор-2026-08-12.md). Значения принятого не меняются;
   перенесены вариант B (панорамный кадр 3:1 во всю ширину — основной) и вариант A
   (полоса без кадра — запасной, когда снимка нет). Отклонённые варианты (кадр 3:2
   слева `--card` и готовый баннер `.banner`) сознательно НЕ переносятся.

   Решение владельца 08.08.2026: место — собственный проект, набранный системой
   из токенов, а не чужой баннер. Отличается от карточки ленты СТРОЕМ, а не
   украшением; пустоты не возникает — умолчание вместо пустого места.

   ИМЕНОВАНИЕ: файл и классы — нейтральные `showcase` (06.09.2026). Прежние
   `promo.css` / `.promo*` резались блокировщиками рекламы (имя `promo` в фильтрах),
   и на живой главной место рисовалось неоформленным. Пост-тип `ph_promo`, шорткод
   `[ph_promo]` и мета `_promo_*` — серверные, браузеру не видны, поэтому не тронуты.
   ============================================================================ */

.showcase{
  max-width:var(--feed-width);
  padding-block:var(--space-7) var(--space-6);
  border-block-end:1px solid var(--rule);
  position:relative;
}
.showcase-lane,
.showcase-lane .showcase{ width:100%; max-width:none; }

/* НАЖИМАЕТСЯ ВСЁ МЕСТО, А НЕ ТОЛЬКО ЗАГОЛОВОК. Ссылка заголовка растягивается
   псевдоэлементом на весь блок (приём карточки ленты 02.08.2026). В дереве
   доступности остаётся ОДНА ссылка с текстом заголовка. */
.showcase__title a::after{content:"";position:absolute;inset:0}
.showcase:hover .showcase__title a{text-decoration-thickness:2px}
.showcase:focus-within{outline:2px solid var(--accent);outline-offset:4px;border-radius:2px}
.showcase__title a:focus-visible{outline:none}
.showcase__title{
  font-size:var(--step-4);
  font-weight:var(--wght-head3);
  font-variation-settings:"opsz" var(--opsz-head3);
  line-height:var(--lh-tight);
  letter-spacing:-.01em;
  max-width:calc(var(--step-4) * 26);
  text-wrap:balance;
}
.showcase__title a{color:inherit;text-decoration-thickness:1px;text-underline-offset:.14em}
.showcase__title a:hover{text-decoration-thickness:2px}
.showcase__title a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.showcase__text{
  margin-block-start:var(--space-2);
  font-family:var(--font-apparatus);
  font-size:var(--step-2);
  line-height:var(--lh-meta);
  color:var(--ink-soft);
  max-width:calc(var(--step-2) * 40);
}
/* Отметка «чьё это» — ПОД блоком, а не мелкой прописной строкой над заголовком:
   надзаголовок-кикер запрещён и ловится детектором. */
.showcase__mark{
  margin-block-start:var(--space-3);
  font-family:var(--font-apparatus);
  font-size:var(--step-1);
  line-height:var(--lh-meta);
  color:var(--ink-mute);
  max-width:calc(var(--step-1) * 40);
}

/* ВАРИАНТ A — полоса без кадра. Самое тихое отличие: в ленте текст никогда не
   начинается от левого края, он всегда правее кадра; полоса от края читается
   как другой строй. Включается, когда у проекта нет снимка. */
.showcase--band{
  padding-inline:var(--space-5); background:var(--bg-sunk);
  box-shadow:0 0 0 1px var(--rule-strong); border-block-end:0;
}
.showcase--band .showcase__title{max-width:calc(var(--step-4) * 30)}

/* ВАРИАНТ B — панорамный кадр во всю ширину (основной). Полоса во всю ширину в
   ленте не встречается нигде, спутать с карточкой нельзя. 3:1 — то же вытянутое
   соотношение, каким было место 1010×200, но размер задаём мы, содержимое своё.
   На узком экране 3:1 превратилось бы в полоску — становится 16:9. */
.showcase--wide .showcase__shot{
  aspect-ratio:3 / 1;
  background:var(--bg-sunk);
  box-shadow:0 0 0 1px var(--rule-strong);
  overflow:hidden;
  margin-block-end:var(--space-4);
}
.showcase--wide .showcase__shot img{display:block;width:100%;height:100%;object-fit:cover}
@media (max-width:560px){
  .showcase--wide .showcase__shot{aspect-ratio:16 / 9}
}

/* Место в ленте раздела: строка ВО ВСЮ ШИРИНУ. Строка ленты `.feed > li` —
   двухколоночный grid (кадр | текст) с полями и нижней линейкой; без сброса
   витрина уезжала бы в текстовую колонку 2 и «урезалась». Селектор
   `.feed > li.feed__showcase` (специфичность 0,2,1) перебивает `.feed > li`
   (0,1,1): делаем строку простым блоком без grid/полей/линейки — свои поля и
   линейку несёт сама `.showcase`. Ставится валидным <li> внутри
   `ul.wp-block-post-template` (functions.php::photographer_feed_promo). */
.feed > li.feed__showcase{ list-style:none; display:block; padding:0; border:0; }

/* Статья: место стоит над обсуждением (TASK-007, решение владельца 05.10.2026). У обсуждения
   своя верхняя линейка --rule-strong и поле 56 px — у панорамы снимаем нижнюю линейку и
   поле обсуждения, чтобы между ними была одна линейка, а не две. Полоса (вариант A) несёт
   свой контур, поле обсуждения у неё остаётся. То же — если обсуждения нет и сразу идёт
   подписка. */
.showcase--wide:has(+ .discussion),
.showcase--wide:has(+ .subscribe-box--article){ border-block-end:0; }
.showcase--wide + .discussion,
.showcase--wide + .subscribe-box--article{ margin-block-start:0; }
