/* Extend the existing Tabler / Vazirmatn surface with owned campaign placements. */
.promo-layout { grid-template-columns:240px minmax(0,1fr) 240px; gap:28px; }
.promo-rail h2 { color:var(--ink); font-size:17px; margin-bottom:18px; }
.project-promo { text-align:start; }
.promo-copy { padding:18px; }
.promo-copy h3 { color:var(--ink); font-size:18px; }
.promo-copy p { margin-bottom:16px; }
.promo-copy .promo-disclosure { font-size:12px; margin:0 0 12px; }
.promo-copy .promo-category { display:inline; font-size:12px; color:var(--muted); margin-inline-start:8px; }
.promo-action { display:flex; gap:8px; align-items:center; font-size:14px; }
.promo-action svg { width:18px; height:18px; flex:none; stroke:currentColor; fill:none; stroke-width:1.8; }
[dir=rtl] .promo-action svg { transform:scaleX(-1); }
.featured-project { margin-top:24px; background:var(--card); border:1px solid var(--card-border); border-radius:14px; overflow:hidden; text-align:start; }
.featured-project > .project-promo { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.1fr); border:0; border-radius:0; background:transparent; }
.featured-project .project-promo img { height:100%; min-height:190px; border:0; object-fit:cover; object-position:top; }
.featured-project .promo-copy { display:flex; flex-direction:column; justify-content:center; padding:24px; }
.featured-project h2 { font-size:23px; font-weight:700; line-height:1.5; margin:0 0 8px; color:var(--ink); }
.featured-project .promo-copy p { font-size:14px; line-height:1.8; color:var(--muted); }
.featured-project .promo-action { font-weight:700; }
.featured-browse { display:flex; justify-content:space-between; align-items:center; padding:14px 24px; border-top:1px solid var(--card-border); font-size:13px; color:var(--muted); gap:12px; }
.featured-browse a { color:var(--accent); text-underline-offset:4px; }
.promo-copy .promo-disclosure { color:var(--muted); }
.project-promo:hover .promo-action { text-underline-offset:4px; }
.project-promo:focus-visible { outline-offset:4px; }
.telegram-app { padding-top:var(--tg-content-safe-area-inset-top, 0px); padding-bottom:var(--tg-content-safe-area-inset-bottom, 0px); }
.telegram-app .top { margin-bottom:24px; }
.telegram-app .hero.card { background:var(--card); }
.telegram-app .hero h1, .telegram-app .brand, .telegram-app .result .title { color:var(--ink); }
.telegram-app .btn.primary { color:var(--button-ink,#fff); }
.telegram-app .btn.ghost, .telegram-app .search input, .telegram-app .chip, .telegram-app .telegram, .telegram-app .card.result { background:var(--card); color:var(--ink); }
.telegram-app .btn.ghost:hover { background:var(--bg); }
.telegram-app .project-promo { background:var(--card); }
.telegram-app .promo-action { color:var(--accent); }
.telegram-app .btn:disabled { opacity:.55; }
[data-telegram-theme=dark] { --card-border:#48566a; }
[data-telegram-theme=dark] .search input::placeholder { color:#b4c2d2; }
@media(max-width:1200px) {
  .promo-layout { grid-template-columns:210px minmax(0,1fr) 210px; gap:20px; }
  .featured-project .promo-copy { padding:18px; }
  .featured-project h2 { font-size:20px; }
}
@media(max-width:1100px) {
  .promo-layout { grid-template-columns:1fr 1fr; }
  .promo-rail { margin-top:12px; }
}
@media(max-width:640px) {
  .promo-layout { grid-template-columns:minmax(0,1fr); gap:20px; }
  .featured-project > .project-promo { grid-template-columns:112px minmax(0,1fr); }
  .featured-project .project-promo img { min-height:184px; }
  .featured-project .promo-copy { padding:16px; }
  .featured-project h2 { font-size:18px; }
  .featured-project .promo-copy p { font-size:13px; margin:0 0 12px; }
  .featured-project .promo-action { font-size:13px; }
  .featured-browse { padding:12px 16px; flex-wrap:wrap; }
  .promo-copy { padding:14px; }
  .promo-copy h3 { font-size:16px; }
  .promo-copy .promo-category { display:block; margin:4px 0 0; }
  .promo-rail { scroll-margin-top:20px; }
}
@media(max-width:360px) {
  .featured-project > .project-promo { grid-template-columns:88px minmax(0,1fr); }
}
