/* Header layout after the menu was reduced to two sections (2026-11-08):
   menu sits right after the logo, language + search are pushed to the end; the logo shrinks on phones. */
@media (min-width: 1025px) {
  .header__inner { justify-content: flex-start; }
  .nav { margin-left: 48px; }
  .actions { margin-left: auto; }
  [dir="rtl"] .nav { margin-left: 0; margin-right: 48px; }
  [dir="rtl"] .actions { margin-left: 0; margin-right: auto; }
}
@media (max-width: 767px) {
  .logo { flex: 1 1 0; min-width: 0; max-width: none; margin-right: 12px; }
  .logo__link { display: block; width: 100%; }
  .actions { flex-shrink: 0; }
  [dir="rtl"] .logo { margin-right: 0; margin-left: 12px; }
}

/* Tweet / Instagram cards in articles (EditorJsRenderer::tweet, instagram embeds) */
.embed-card{display:flex;flex-direction:column;align-items:flex-start;margin:24px 0}
.embed-card .twitter-tweet{margin:0!important;max-width:550px;width:100%}
.embed-card iframe{max-width:100%;border:0}

/* Mobile menu: 4 short items wrap to a second row instead of hiding behind horizontal scroll */
@media (max-width: 767px) {
  .nav__list { flex-wrap: wrap; justify-content: center; overflow: visible; white-space: normal; }
}

/* Pages without a poster image (About, Contact, text pages): the article title block is pulled up by -100/-200px
   on wide screens to overlap the poster; without one it covered the header (logo, menu). */
.article__inner > .article__content:first-child { margin-top: 20px; }

/* Text for search engines / screen readers only (e.g. H1 on About and Contact pages) */
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Text links in articles: the global a{display:inline-block} moved a long link to its own line (bullet left above)
   and the ::after underline covered only the last line. Inline links + a real underline that follows every line. */
.article__content p a, .article__content li a, .article__content blockquote a {
    display: inline;
    text-decoration: underline;
    text-decoration-color: #fddc02;
    text-decoration-thickness: 2px;
    text-underline-offset: 4px;
    text-decoration-skip-ink: none;
}
.article__content p a::after, .article__content li a::after, .article__content blockquote a::after { display: none; }

/* "More news" button (hybrid pagination: load-more.js / php.js for search) */
.load-more { width: 100%; display: flex; justify-content: center; margin: 32px 0 0; }
.load-more__btn { display: inline-block; padding: 12px 32px; border: 2px solid #111827; border-radius: 4px; color: #111827;
    font-weight: 500; text-decoration: none; background: #fff; cursor: pointer; }
.load-more__btn:hover { background: #111827; color: #fff; }
.load-more__btn.is-loading { opacity: .5; pointer-events: none; }

/* Article stream (article-stream.js): "Next article" link that becomes the separator between loaded articles */
.next-article { margin: 40px 0 0; }
.next-article__link { display: block; padding: 20px 0; border-top: 3px solid #fddc02; color: #111827; text-decoration: none; }
.next-article__label { display: block; font-size: 14px; text-transform: uppercase; letter-spacing: .06em; color: #6b7280; margin-bottom: 6px; }
.next-article__title { display: block; font-size: 22px; font-weight: 500; line-height: 1.3; }
.next-article__link:hover .next-article__title { text-decoration: underline; text-decoration-color: #fddc02; }
.article-stream__item { margin-top: 8px; }

/* Topic tags under an article (TagController hub pages) */
.article-tags { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 24px 0 8px; }
.article-tags__label { font-size: 14px; color: #6b7280; margin-right: 4px; }
.article-tags__link { display: inline-block; padding: 4px 12px; border: 1px solid #e5e7eb; border-radius: 999px; font-size: 14px; color: #111827; text-decoration: none; background: #fff; }
.article-tags__link:hover { border-color: #fddc02; background: #fffbe6; }
.article__content .article-tags__link, .article__content .article-tags__link:hover { text-decoration: none; background-image: none; box-shadow: none; }
.article__content .article-tags__link::after, .article__content .article-tags__link::before { display: none !important; content: none !important; }

/* <picture> wrappers (WebP with JPEG fallback) must not change the theme's image layout */
.news__img picture, .article__img picture, .article__poster picture { display: contents; }

/* Closing "Sources" list of auto articles (EditorJsRenderer wraps it in .article-sources): same look as the text, smaller */
.article__content .article-sources { margin-top: 24px; font-size: 14px; line-height: 1.5; }
.article__content .article-sources h3 { font-size: 14px; line-height: 1.4; margin: 0 0 6px; }
.article__content .article-sources li { font-size: 14px; line-height: 1.5; margin: 0 0 4px; }
.article__content .article-sources a::after { bottom: 0; height: 1px; }

/* Caption + credit under a photo the news pipeline took from a source (EditorJsRenderer, data.source_photo) */
.article__content .article__photo-caption { margin: -28px 0 32px; font-size: 13px; line-height: 1.45; color: #6b7280; }
@media (max-width: 767px) { .article__content .article__photo-caption { margin: -20px 0 24px; } }

/* Contact form under the /contact page text (home/_contact_form.blade.php) */
.contact-form { margin: 40px 0 16px; padding-top: 24px; border-top: 1px solid #e5e7eb; }
.contact-form__title { font-size: 24px; line-height: 1.3; margin: 0 0 20px; }
.contact-form__row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
@media (max-width: 767px) { .contact-form__row { grid-template-columns: 1fr; gap: 0; } }
.contact-form__field { display: block; margin: 0 0 16px; }
.contact-form__label { display: block; margin: 0 0 6px; font-size: 14px; font-weight: 500; color: #374151; }
.contact-form__input { display: block; width: 100%; padding: 10px 12px; font: inherit; font-size: 16px; color: #111827; background: #fff; border: 1px solid #d1d5db; border-radius: 8px; outline: 0; }
.contact-form__input:focus { border-color: #fddc02; box-shadow: 0 0 0 3px rgba(253, 220, 2, .35); }
.contact-form__textarea { min-height: 150px; resize: vertical; }
.contact-form__error { display: block; margin-top: 4px; font-size: 13px; color: #b91c1c; }
.contact-form__captcha { margin: 0 0 16px; }
.contact-form__note { margin: 0 0 16px; font-size: 13px; line-height: 1.5; color: #6b7280; }
.contact-form__submit { max-width: 240px; }
.contact-form__ok { padding: 12px 16px; border-radius: 8px; background: #ecfdf5; color: #065f46; }
.contact-form__hp { position: absolute; left: -10000px; top: auto; width: 1px; height: 1px; overflow: hidden; }
[dir="rtl"] .contact-form__hp { left: auto; right: -10000px; }
